@vm0/cli 9.277.1 → 9.277.2

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 (104) hide show
  1. package/{agent-X7ZNZPOX.js → agent-ZPBMY2SD.js} +6 -6
  2. package/{banking-KGL4A62H.js → banking-HEAMKLPE.js} +4 -4
  3. package/{browser-MWEZPQ7O.js → browser-OL6ZE6BX.js} +4 -4
  4. package/{chat-OT3H62CI.js → chat-43YOERZG.js} +6 -6
  5. package/{chunk-SGSECC77.js → chunk-3FRL47BJ.js} +2 -2
  6. package/{chunk-AIHN2SKV.js → chunk-5AIAG76X.js} +2 -2
  7. package/{chunk-IL2KMIJJ.js → chunk-5BIHTSHQ.js} +309 -121
  8. package/chunk-5BIHTSHQ.js.map +1 -0
  9. package/{chunk-XO3YWKZB.js → chunk-JPLAJP5I.js} +2 -2
  10. package/{chunk-4GLJF77C.js → chunk-KA75HGXU.js} +242 -742
  11. package/chunk-KA75HGXU.js.map +1 -0
  12. package/{chunk-7572GO27.js → chunk-LPNBRPVQ.js} +4 -4
  13. package/{chunk-HTTADLT3.js → chunk-NDYPPVD3.js} +2 -22
  14. package/{chunk-HTTADLT3.js.map → chunk-NDYPPVD3.js.map} +1 -1
  15. package/{chunk-H6BEDAS4.js → chunk-QJI3SAUY.js} +2 -2
  16. package/{chunk-YL5CDK4E.js → chunk-SVFOPAWB.js} +1 -7
  17. package/chunk-SVFOPAWB.js.map +1 -0
  18. package/{chunk-NEXYY3VO.js → chunk-V2FTIYTG.js} +2333 -2628
  19. package/chunk-V2FTIYTG.js.map +1 -0
  20. package/{computer-use-4QXDRG4V.js → computer-use-2GLT2YH7.js} +4 -4
  21. package/{connector-SXSAS4PE.js → connector-PVESAPZF.js} +6 -6
  22. package/{credit-CKHMOX6F.js → credit-NMYQ76CX.js} +6 -16
  23. package/credit-NMYQ76CX.js.map +1 -0
  24. package/{developer-support-QBGR6BJO.js → developer-support-F75A6J22.js} +4 -4
  25. package/{doctor-EA7ECFIO.js → doctor-QDTOPN2D.js} +18 -41
  26. package/doctor-QDTOPN2D.js.map +1 -0
  27. package/{feishu-4N7IWJJV.js → feishu-W6YXMIUS.js} +4 -4
  28. package/{finance-KQS5IPPY.js → finance-2J5KDPA5.js} +4 -4
  29. package/{generate-ALYUA6F7.js → generate-2VM7AIVZ.js} +5 -5
  30. package/{github-MXA236XO.js → github-OCKDSECE.js} +4 -4
  31. package/{goal-RK2DOCPU.js → goal-3KPOQFUH.js} +4 -4
  32. package/{host-4NZXR7RE.js → host-MAAICSOY.js} +4 -4
  33. package/{logs-E4T5GFFU.js → logs-GKIQLSQ6.js} +6 -6
  34. package/{mail-AS3PMC7N.js → mail-KLADGEP4.js} +6 -6
  35. package/{maps-GFGMODQZ.js → maps-S5USXHOL.js} +4 -4
  36. package/{model-AJIZ5IVT.js → model-XRK7Y3MG.js} +5 -5
  37. package/{model-provider-RBY4EVBH.js → model-provider-OONFZIY4.js} +5 -5
  38. package/package.json +1 -1
  39. package/{people-search-PZQZLLSA.js → people-search-FXKKUDJG.js} +4 -4
  40. package/{phone-X756PGVQ.js → phone-GWXG7JWK.js} +4 -4
  41. package/{recognize-P7QG3HXA.js → recognize-N3ENWTBX.js} +4 -4
  42. package/{resource-5LCV4HM6.js → resource-AX5VPSH4.js} +4 -4
  43. package/{scrape-6ZQMKQNG.js → scrape-CNWD4P44.js} +4 -4
  44. package/{search-ZJJINEQB.js → search-WDONTFV3.js} +6 -6
  45. package/{slack-Z6WENJ2P.js → slack-2FELLBUE.js} +4 -4
  46. package/{teams-ZAMCSLKG.js → teams-KMB4QSGG.js} +4 -4
  47. package/{telegram-XJMUTZLB.js → telegram-GIKM2NS7.js} +4 -4
  48. package/{upgrade-3DANFB33.js → upgrade-AZS7AIVQ.js} +3 -3
  49. package/{video-QC32QN57.js → video-QE2FIEIG.js} +3 -3
  50. package/{weather-CWWT2KDJ.js → weather-V4KRC55E.js} +4 -4
  51. package/{web-5K2IPPWW.js → web-XSK6I5E6.js} +4 -4
  52. package/{web-search-DBJMZGK4.js → web-search-RP5C7D7D.js} +4 -4
  53. package/{whoami-HPT36I55.js → whoami-SNBYDOBY.js} +17 -5
  54. package/whoami-SNBYDOBY.js.map +1 -0
  55. package/{workflow-27BFGSGL.js → workflow-UWMDJILQ.js} +6 -6
  56. package/zero.js +39 -46
  57. package/zero.js.map +1 -1
  58. package/chunk-4GLJF77C.js.map +0 -1
  59. package/chunk-IL2KMIJJ.js.map +0 -1
  60. package/chunk-NEXYY3VO.js.map +0 -1
  61. package/chunk-YL5CDK4E.js.map +0 -1
  62. package/credit-CKHMOX6F.js.map +0 -1
  63. package/doctor-EA7ECFIO.js.map +0 -1
  64. package/org-OUHCBZOO.js +0 -843
  65. package/org-OUHCBZOO.js.map +0 -1
  66. package/whoami-HPT36I55.js.map +0 -1
  67. /package/{agent-X7ZNZPOX.js.map → agent-ZPBMY2SD.js.map} +0 -0
  68. /package/{banking-KGL4A62H.js.map → banking-HEAMKLPE.js.map} +0 -0
  69. /package/{browser-MWEZPQ7O.js.map → browser-OL6ZE6BX.js.map} +0 -0
  70. /package/{chat-OT3H62CI.js.map → chat-43YOERZG.js.map} +0 -0
  71. /package/{chunk-SGSECC77.js.map → chunk-3FRL47BJ.js.map} +0 -0
  72. /package/{chunk-AIHN2SKV.js.map → chunk-5AIAG76X.js.map} +0 -0
  73. /package/{chunk-XO3YWKZB.js.map → chunk-JPLAJP5I.js.map} +0 -0
  74. /package/{chunk-7572GO27.js.map → chunk-LPNBRPVQ.js.map} +0 -0
  75. /package/{chunk-H6BEDAS4.js.map → chunk-QJI3SAUY.js.map} +0 -0
  76. /package/{computer-use-4QXDRG4V.js.map → computer-use-2GLT2YH7.js.map} +0 -0
  77. /package/{connector-SXSAS4PE.js.map → connector-PVESAPZF.js.map} +0 -0
  78. /package/{developer-support-QBGR6BJO.js.map → developer-support-F75A6J22.js.map} +0 -0
  79. /package/{feishu-4N7IWJJV.js.map → feishu-W6YXMIUS.js.map} +0 -0
  80. /package/{finance-KQS5IPPY.js.map → finance-2J5KDPA5.js.map} +0 -0
  81. /package/{generate-ALYUA6F7.js.map → generate-2VM7AIVZ.js.map} +0 -0
  82. /package/{github-MXA236XO.js.map → github-OCKDSECE.js.map} +0 -0
  83. /package/{goal-RK2DOCPU.js.map → goal-3KPOQFUH.js.map} +0 -0
  84. /package/{host-4NZXR7RE.js.map → host-MAAICSOY.js.map} +0 -0
  85. /package/{logs-E4T5GFFU.js.map → logs-GKIQLSQ6.js.map} +0 -0
  86. /package/{mail-AS3PMC7N.js.map → mail-KLADGEP4.js.map} +0 -0
  87. /package/{maps-GFGMODQZ.js.map → maps-S5USXHOL.js.map} +0 -0
  88. /package/{model-AJIZ5IVT.js.map → model-XRK7Y3MG.js.map} +0 -0
  89. /package/{model-provider-RBY4EVBH.js.map → model-provider-OONFZIY4.js.map} +0 -0
  90. /package/{people-search-PZQZLLSA.js.map → people-search-FXKKUDJG.js.map} +0 -0
  91. /package/{phone-X756PGVQ.js.map → phone-GWXG7JWK.js.map} +0 -0
  92. /package/{recognize-P7QG3HXA.js.map → recognize-N3ENWTBX.js.map} +0 -0
  93. /package/{resource-5LCV4HM6.js.map → resource-AX5VPSH4.js.map} +0 -0
  94. /package/{scrape-6ZQMKQNG.js.map → scrape-CNWD4P44.js.map} +0 -0
  95. /package/{search-ZJJINEQB.js.map → search-WDONTFV3.js.map} +0 -0
  96. /package/{slack-Z6WENJ2P.js.map → slack-2FELLBUE.js.map} +0 -0
  97. /package/{teams-ZAMCSLKG.js.map → teams-KMB4QSGG.js.map} +0 -0
  98. /package/{telegram-XJMUTZLB.js.map → telegram-GIKM2NS7.js.map} +0 -0
  99. /package/{upgrade-3DANFB33.js.map → upgrade-AZS7AIVQ.js.map} +0 -0
  100. /package/{video-QC32QN57.js.map → video-QE2FIEIG.js.map} +0 -0
  101. /package/{weather-CWWT2KDJ.js.map → weather-V4KRC55E.js.map} +0 -0
  102. /package/{web-5K2IPPWW.js.map → web-XSK6I5E6.js.map} +0 -0
  103. /package/{web-search-DBJMZGK4.js.map → web-search-RP5C7D7D.js.map} +0 -0
  104. /package/{workflow-27BFGSGL.js.map → workflow-UWMDJILQ.js.map} +0 -0
@@ -6,16 +6,16 @@ import {
6
6
  ZERO_RECOGNITION_MAX_PROMPT_CHARS,
7
7
  callZeroRecognition,
8
8
  zeroRecognitionImageMimeTypeSchema
9
- } from "./chunk-4GLJF77C.js";
9
+ } from "./chunk-KA75HGXU.js";
10
10
  import {
11
11
  inferWebUploadContentType,
12
12
  uploadWebFile
13
- } from "./chunk-H6BEDAS4.js";
13
+ } from "./chunk-QJI3SAUY.js";
14
14
  import "./chunk-ANOLYIPL.js";
15
15
  import {
16
16
  ApiRequestError,
17
17
  withErrorHandler
18
- } from "./chunk-NEXYY3VO.js";
18
+ } from "./chunk-V2FTIYTG.js";
19
19
  import "./chunk-32FE3MDA.js";
20
20
  import {
21
21
  Command
@@ -104,4 +104,4 @@ Notes:
104
104
  export {
105
105
  zeroRecognizeCommand
106
106
  };
107
- //# sourceMappingURL=recognize-P7QG3HXA.js.map
107
+ //# sourceMappingURL=recognize-N3ENWTBX.js.map
@@ -13,13 +13,13 @@ import {
13
13
  } from "./chunk-NKYACNWA.js";
14
14
  import {
15
15
  getRegistryResourceDownload
16
- } from "./chunk-4GLJF77C.js";
17
- import "./chunk-H6BEDAS4.js";
16
+ } from "./chunk-KA75HGXU.js";
17
+ import "./chunk-QJI3SAUY.js";
18
18
  import "./chunk-ANOLYIPL.js";
19
19
  import {
20
20
  source_default,
21
21
  withErrorHandler
22
- } from "./chunk-NEXYY3VO.js";
22
+ } from "./chunk-V2FTIYTG.js";
23
23
  import "./chunk-32FE3MDA.js";
24
24
  import {
25
25
  Command
@@ -3110,4 +3110,4 @@ export {
3110
3110
  findRegistryResourceForPull,
3111
3111
  zeroResourceCommand
3112
3112
  };
3113
- //# sourceMappingURL=resource-5LCV4HM6.js.map
3113
+ //# sourceMappingURL=resource-AX5VPSH4.js.map
@@ -5,13 +5,13 @@ import {
5
5
  callZeroScrape,
6
6
  zeroScrapeFormatSchema,
7
7
  zeroScrapeModeSchema
8
- } from "./chunk-4GLJF77C.js";
9
- import "./chunk-H6BEDAS4.js";
8
+ } from "./chunk-KA75HGXU.js";
9
+ import "./chunk-QJI3SAUY.js";
10
10
  import "./chunk-ANOLYIPL.js";
11
11
  import {
12
12
  source_default,
13
13
  withErrorHandler
14
- } from "./chunk-NEXYY3VO.js";
14
+ } from "./chunk-V2FTIYTG.js";
15
15
  import "./chunk-32FE3MDA.js";
16
16
  import {
17
17
  Command,
@@ -97,4 +97,4 @@ Notes:
97
97
  export {
98
98
  zeroScrapeCommand
99
99
  };
100
- //# sourceMappingURL=scrape-6ZQMKQNG.js.map
100
+ //# sourceMappingURL=scrape-CNWD4P44.js.map
@@ -5,23 +5,23 @@ import {
5
5
  parseSearchQuery,
6
6
  parseTime,
7
7
  runLogsSearch
8
- } from "./chunk-IL2KMIJJ.js";
8
+ } from "./chunk-5BIHTSHQ.js";
9
9
  import {
10
10
  formatIsoTimestamp,
11
11
  isUuid,
12
12
  parseBoundedLogCount
13
13
  } from "./chunk-VNNPAHD3.js";
14
14
  import "./chunk-NKYACNWA.js";
15
- import "./chunk-YL5CDK4E.js";
15
+ import "./chunk-SVFOPAWB.js";
16
16
  import {
17
17
  searchZeroChat
18
- } from "./chunk-4GLJF77C.js";
19
- import "./chunk-H6BEDAS4.js";
18
+ } from "./chunk-KA75HGXU.js";
19
+ import "./chunk-QJI3SAUY.js";
20
20
  import "./chunk-ANOLYIPL.js";
21
21
  import {
22
22
  source_default,
23
23
  withErrorHandler
24
- } from "./chunk-NEXYY3VO.js";
24
+ } from "./chunk-V2FTIYTG.js";
25
25
  import "./chunk-WHCP2H2S.js";
26
26
  import "./chunk-32FE3MDA.js";
27
27
  import {
@@ -200,4 +200,4 @@ export {
200
200
  buildSlackRecipe,
201
201
  zeroSearchCommand
202
202
  };
203
- //# sourceMappingURL=search-ZJJINEQB.js.map
203
+ //# sourceMappingURL=search-WDONTFV3.js.map
@@ -7,15 +7,15 @@ import {
7
7
  initSlackFileUpload,
8
8
  materializeSlackFileUpload,
9
9
  sendSlackMessage
10
- } from "./chunk-4GLJF77C.js";
10
+ } from "./chunk-KA75HGXU.js";
11
11
  import {
12
12
  inferWebUploadContentType
13
- } from "./chunk-H6BEDAS4.js";
13
+ } from "./chunk-QJI3SAUY.js";
14
14
  import "./chunk-ANOLYIPL.js";
15
15
  import {
16
16
  source_default,
17
17
  withErrorHandler
18
- } from "./chunk-NEXYY3VO.js";
18
+ } from "./chunk-V2FTIYTG.js";
19
19
  import "./chunk-32FE3MDA.js";
20
20
  import {
21
21
  Command
@@ -350,4 +350,4 @@ Examples:
350
350
  export {
351
351
  zeroSlackCommand
352
352
  };
353
- //# sourceMappingURL=slack-Z6WENJ2P.js.map
353
+ //# sourceMappingURL=slack-2FELLBUE.js.map
@@ -6,13 +6,13 @@ import {
6
6
  downloadTeamsFile,
7
7
  initTeamsFileUpload,
8
8
  sendTeamsMessage
9
- } from "./chunk-4GLJF77C.js";
10
- import "./chunk-H6BEDAS4.js";
9
+ } from "./chunk-KA75HGXU.js";
10
+ import "./chunk-QJI3SAUY.js";
11
11
  import "./chunk-ANOLYIPL.js";
12
12
  import {
13
13
  source_default,
14
14
  withErrorHandler
15
- } from "./chunk-NEXYY3VO.js";
15
+ } from "./chunk-V2FTIYTG.js";
16
16
  import "./chunk-32FE3MDA.js";
17
17
  import {
18
18
  Command
@@ -284,4 +284,4 @@ Examples:
284
284
  export {
285
285
  zeroTeamsCommand
286
286
  };
287
- //# sourceMappingURL=teams-ZAMCSLKG.js.map
287
+ //# sourceMappingURL=teams-KMB4QSGG.js.map
@@ -7,13 +7,13 @@ import {
7
7
  initTelegramFileUpload,
8
8
  listTelegramBots,
9
9
  sendTelegramMessage
10
- } from "./chunk-4GLJF77C.js";
11
- import "./chunk-H6BEDAS4.js";
10
+ } from "./chunk-KA75HGXU.js";
11
+ import "./chunk-QJI3SAUY.js";
12
12
  import "./chunk-ANOLYIPL.js";
13
13
  import {
14
14
  source_default,
15
15
  withErrorHandler
16
- } from "./chunk-NEXYY3VO.js";
16
+ } from "./chunk-V2FTIYTG.js";
17
17
  import "./chunk-32FE3MDA.js";
18
18
  import {
19
19
  Command
@@ -338,4 +338,4 @@ Examples:
338
338
  export {
339
339
  zeroTelegramCommand
340
340
  };
341
- //# sourceMappingURL=telegram-XJMUTZLB.js.map
341
+ //# sourceMappingURL=telegram-GIKM2NS7.js.map
@@ -6,12 +6,12 @@ import {
6
6
  } from "./chunk-J45P5ALH.js";
7
7
  import {
8
8
  getPlatformOrigin
9
- } from "./chunk-SGSECC77.js";
9
+ } from "./chunk-3FRL47BJ.js";
10
10
  import "./chunk-ANOLYIPL.js";
11
11
  import {
12
12
  source_default,
13
13
  withErrorHandler
14
- } from "./chunk-NEXYY3VO.js";
14
+ } from "./chunk-V2FTIYTG.js";
15
15
  import "./chunk-32FE3MDA.js";
16
16
  import {
17
17
  Command,
@@ -47,4 +47,4 @@ Output:
47
47
  export {
48
48
  zeroUpgradeCommand
49
49
  };
50
- //# sourceMappingURL=upgrade-3DANFB33.js.map
50
+ //# sourceMappingURL=upgrade-AZS7AIVQ.js.map
@@ -4,11 +4,11 @@ const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  downloadWebFile,
6
6
  transcribeAudio
7
- } from "./chunk-H6BEDAS4.js";
7
+ } from "./chunk-QJI3SAUY.js";
8
8
  import "./chunk-ANOLYIPL.js";
9
9
  import {
10
10
  withErrorHandler
11
- } from "./chunk-NEXYY3VO.js";
11
+ } from "./chunk-V2FTIYTG.js";
12
12
  import "./chunk-32FE3MDA.js";
13
13
  import {
14
14
  Command
@@ -247,4 +247,4 @@ Tip (video understanding):
247
247
  export {
248
248
  zeroVideoCommand
249
249
  };
250
- //# sourceMappingURL=video-QC32QN57.js.map
250
+ //# sourceMappingURL=video-QE2FIEIG.js.map
@@ -3,13 +3,13 @@ import { createRequire as __createRequire } from "node:module";
3
3
  const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  callZeroWeather
6
- } from "./chunk-4GLJF77C.js";
7
- import "./chunk-H6BEDAS4.js";
6
+ } from "./chunk-KA75HGXU.js";
7
+ import "./chunk-QJI3SAUY.js";
8
8
  import "./chunk-ANOLYIPL.js";
9
9
  import {
10
10
  source_default,
11
11
  withErrorHandler
12
- } from "./chunk-NEXYY3VO.js";
12
+ } from "./chunk-V2FTIYTG.js";
13
13
  import "./chunk-32FE3MDA.js";
14
14
  import {
15
15
  Command,
@@ -588,4 +588,4 @@ Notes:
588
588
  export {
589
589
  zeroWeatherCommand
590
590
  };
591
- //# sourceMappingURL=weather-CWWT2KDJ.js.map
591
+ //# sourceMappingURL=weather-V4KRC55E.js.map
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __createRequire } from "node:module";
3
3
  const require = __createRequire(import.meta.url);
4
- import "./chunk-4GLJF77C.js";
4
+ import "./chunk-KA75HGXU.js";
5
5
  import {
6
6
  downloadWebFile,
7
7
  uploadWebFile
8
- } from "./chunk-H6BEDAS4.js";
8
+ } from "./chunk-QJI3SAUY.js";
9
9
  import "./chunk-ANOLYIPL.js";
10
10
  import {
11
11
  withErrorHandler
12
- } from "./chunk-NEXYY3VO.js";
12
+ } from "./chunk-V2FTIYTG.js";
13
13
  import "./chunk-32FE3MDA.js";
14
14
  import {
15
15
  Command
@@ -107,4 +107,4 @@ Examples:
107
107
  export {
108
108
  zeroWebCommand
109
109
  };
110
- //# sourceMappingURL=web-5K2IPPWW.js.map
110
+ //# sourceMappingURL=web-XSK6I5E6.js.map
@@ -9,13 +9,13 @@ import {
9
9
  zeroWebSearchDomainSchema,
10
10
  zeroWebSearchRecencySchema,
11
11
  zeroWebSearchRequestSchema
12
- } from "./chunk-4GLJF77C.js";
13
- import "./chunk-H6BEDAS4.js";
12
+ } from "./chunk-KA75HGXU.js";
13
+ import "./chunk-QJI3SAUY.js";
14
14
  import "./chunk-ANOLYIPL.js";
15
15
  import {
16
16
  source_default,
17
17
  withErrorHandler
18
- } from "./chunk-NEXYY3VO.js";
18
+ } from "./chunk-V2FTIYTG.js";
19
19
  import "./chunk-32FE3MDA.js";
20
20
  import {
21
21
  Command,
@@ -148,4 +148,4 @@ Notes:
148
148
  export {
149
149
  zeroWebSearchCommand
150
150
  };
151
- //# sourceMappingURL=web-search-DBJMZGK4.js.map
151
+ //# sourceMappingURL=web-search-RP5C7D7D.js.map
@@ -5,13 +5,14 @@ import {
5
5
  connectorPermissionGrantsToFirewallPolicies,
6
6
  loadConnectorPermissionInfos,
7
7
  policyIcon
8
- } from "./chunk-7572GO27.js";
8
+ } from "./chunk-LPNBRPVQ.js";
9
9
  import {
10
10
  getZeroAgentUserConnectors,
11
+ getZeroOrg,
11
12
  listZeroConnectors,
12
13
  listZeroUserPermissionGrants
13
- } from "./chunk-4GLJF77C.js";
14
- import "./chunk-H6BEDAS4.js";
14
+ } from "./chunk-KA75HGXU.js";
15
+ import "./chunk-QJI3SAUY.js";
15
16
  import "./chunk-ANOLYIPL.js";
16
17
  import {
17
18
  getActiveOrg,
@@ -19,7 +20,7 @@ import {
19
20
  getToken,
20
21
  source_default,
21
22
  withErrorHandler
22
- } from "./chunk-NEXYY3VO.js";
23
+ } from "./chunk-V2FTIYTG.js";
23
24
  import {
24
25
  decodeZeroTokenPayload
25
26
  } from "./chunk-32FE3MDA.js";
@@ -77,12 +78,23 @@ function printConnectorPermissions(info) {
77
78
  ` ${unknownIcon} ${"unknown endpoints".padEnd(nameWidth)} Endpoints not matching any rule`
78
79
  );
79
80
  }
81
+ async function printWorkspace() {
82
+ try {
83
+ const org = await getZeroOrg();
84
+ console.log(`Workspace: ${org.name}`);
85
+ if (org.tier) {
86
+ console.log(`Tier: ${org.tier}`);
87
+ }
88
+ } catch {
89
+ }
90
+ }
80
91
  async function showSandboxInfo(showPermissions) {
81
92
  const agentId = process.env.ZERO_AGENT_ID;
82
93
  const payload = decodeZeroTokenPayload();
83
94
  console.log(`Agent ID: ${agentId}`);
84
95
  console.log(`Run ID: ${payload?.runId ?? source_default.dim("unavailable")}`);
85
96
  console.log(`Org ID: ${payload?.orgId ?? source_default.dim("unavailable")}`);
97
+ await printWorkspace();
86
98
  if (payload?.capabilities?.length) {
87
99
  console.log();
88
100
  console.log(source_default.bold("Capabilities:"));
@@ -194,4 +206,4 @@ Notes:
194
206
  export {
195
207
  zeroWhoamiCommand
196
208
  };
197
- //# sourceMappingURL=whoami-HPT36I55.js.map
209
+ //# sourceMappingURL=whoami-SNBYDOBY.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/commands/zero/whoami.ts"],"sourcesContent":["import { Command } from \"commander\";\nimport chalk from \"chalk\";\nimport {\n getApiUrl,\n getActiveOrg,\n getToken,\n decodeZeroTokenPayload,\n} from \"../../lib/api/config\";\nimport {\n listZeroConnectors,\n getZeroAgentUserConnectors,\n getZeroOrg,\n listZeroUserPermissionGrants,\n} from \"../../lib/api\";\nimport { withErrorHandler } from \"../../lib/command\";\nimport { policyIcon } from \"../../lib/utils/format-utils\";\nimport {\n loadConnectorPermissionInfos,\n connectorPermissionGrantsToFirewallPolicies,\n type ConnectorPermissionInfo,\n} from \"./shared/firewall-permissions\";\n\n/**\n * Detect if running inside a zero sandbox (agent runtime).\n * Uses ZERO_AGENT_ID (not VM0_RUN_ID) because the zero CLI operates in the\n * zero agent context where ZERO_AGENT_ID is the canonical sandbox indicator.\n */\nfunction isInsideSandbox(): boolean {\n return !!process.env.ZERO_AGENT_ID;\n}\n\nfunction formatConnectorIdentity(connector: {\n externalUsername: string | null;\n externalEmail: string | null;\n connectionStatus: \"connected\" | \"reconnect-required\";\n}): string {\n let identity = \"\";\n if (connector.externalUsername && connector.externalEmail) {\n identity = `@${connector.externalUsername} (${connector.externalEmail})`;\n } else if (connector.externalUsername) {\n identity = `@${connector.externalUsername}`;\n } else if (connector.externalEmail) {\n identity = connector.externalEmail;\n }\n if (connector.connectionStatus === \"reconnect-required\") {\n identity += ` ${chalk.yellow(\"(needs reconnect)\")}`;\n }\n return identity;\n}\n\nfunction printConnectorPermissions(info: ConnectorPermissionInfo): void {\n if (!info.hasPermissions) return;\n\n if (!info.hasPolicyEntry) {\n console.log(chalk.dim(\" full access — no permission rules configured\"));\n return;\n }\n\n if (\n info.permissions.length === 0 &&\n (!info.policies || Object.keys(info.policies).length === 0)\n ) {\n const unknownIcon = policyIcon(info.unknownPolicy);\n console.log(` ${unknownIcon} unknown endpoints`);\n return;\n }\n\n const nameWidth = Math.max(\n \"unknown endpoints\".length,\n ...info.permissions.map((p) => {\n return p.name.length;\n }),\n );\n\n for (const perm of info.permissions) {\n const policy = info.policies?.[perm.name] ?? \"deny\";\n const icon = policyIcon(policy);\n const desc = perm.description ?? \"\";\n console.log(` ${icon} ${perm.name.padEnd(nameWidth)} ${desc}`);\n }\n\n const unknownIcon = policyIcon(info.unknownPolicy);\n console.log(\n ` ${unknownIcon} ${\"unknown endpoints\".padEnd(nameWidth)} Endpoints not matching any rule`,\n );\n}\n\n/**\n * Workspace identity is supplementary: whoami must still print the agent\n * identity, capabilities, and connectors when the org lookup fails or 404s.\n */\nasync function printWorkspace(): Promise<void> {\n try {\n const org = await getZeroOrg();\n console.log(`Workspace: ${org.name}`);\n if (org.tier) {\n console.log(`Tier: ${org.tier}`);\n }\n } catch {\n // Silently skip — workspace info is supplementary\n }\n}\n\nasync function showSandboxInfo(showPermissions: boolean): Promise<void> {\n const agentId = process.env.ZERO_AGENT_ID;\n const payload = decodeZeroTokenPayload();\n\n console.log(`Agent ID: ${agentId}`);\n console.log(`Run ID: ${payload?.runId ?? chalk.dim(\"unavailable\")}`);\n console.log(`Org ID: ${payload?.orgId ?? chalk.dim(\"unavailable\")}`);\n await printWorkspace();\n\n // Capabilities section\n if (payload?.capabilities?.length) {\n console.log();\n console.log(chalk.bold(\"Capabilities:\"));\n console.log(` ${payload.capabilities.join(\", \")}`);\n }\n\n // Connected Services section\n try {\n if (showPermissions) {\n // Full mode: fetch connector identities, current-user grants, and agent connector access.\n const [connectorsResult, grantsResult, enabledResult] =\n await Promise.allSettled([\n listZeroConnectors(),\n listZeroUserPermissionGrants(agentId!),\n getZeroAgentUserConnectors(agentId!),\n ]);\n\n if (connectorsResult.status === \"rejected\") return;\n\n const identities = connectorsResult.value.connectors.filter((c) => {\n return c.externalUsername !== null || c.externalEmail !== null;\n });\n\n if (identities.length === 0) return;\n\n let permissionInfoBySlug = new Map<string, ConnectorPermissionInfo>();\n const permissionDataAvailable =\n grantsResult.status === \"fulfilled\" &&\n enabledResult.status === \"fulfilled\";\n if (permissionDataAvailable) {\n const permissionInfos = await loadConnectorPermissionInfos({\n displayConnectorSlugs: identities.map((connector) => {\n return connector.slug;\n }),\n defaultPolicyConnectorSlugs: enabledResult.value,\n storedPolicies: connectorPermissionGrantsToFirewallPolicies(\n grantsResult.value,\n ),\n });\n permissionInfoBySlug = new Map(\n permissionInfos.map((info) => {\n return [info.connectorSlug, info];\n }),\n );\n }\n\n console.log();\n console.log(chalk.bold(\"Connectors:\"));\n for (const connector of identities) {\n const identity = formatConnectorIdentity(connector);\n console.log(` ${connector.slug.padEnd(14)}${identity}`);\n\n if (permissionDataAvailable) {\n const info = permissionInfoBySlug.get(connector.slug);\n if (info) {\n printConnectorPermissions(info);\n }\n }\n }\n } else {\n // Default mode: only fetch connector identities (1 API call)\n const connectors = await listZeroConnectors();\n const identities = connectors.connectors.filter((c) => {\n return c.externalUsername !== null || c.externalEmail !== null;\n });\n\n if (identities.length === 0) return;\n\n console.log();\n console.log(chalk.bold(\"Connectors:\"));\n for (const connector of identities) {\n const identity = formatConnectorIdentity(connector);\n console.log(` ${connector.slug.padEnd(14)}${identity}`);\n }\n }\n } catch {\n // Silently skip — connector info is supplementary\n }\n}\n\nasync function showLocalInfo(): Promise<void> {\n const token = await getToken();\n const apiUrl = await getApiUrl();\n const payload = token ? decodeZeroTokenPayload(token) : undefined;\n const isExpired = payload ? payload.exp * 1000 <= Date.now() : false;\n const activeOrg = !isExpired ? await getActiveOrg() : undefined;\n\n // Auth section\n console.log(chalk.bold(\"Auth:\"));\n if (!token) {\n console.log(` Status: ${chalk.dim(\"Not authenticated\")}`);\n } else if (!payload) {\n console.log(` Status: ${chalk.red(\"Invalid ZERO_TOKEN\")}`);\n } else if (isExpired) {\n console.log(` Status: ${chalk.red(\"Expired ZERO_TOKEN\")}`);\n } else {\n console.log(\n ` Status: ${chalk.green(\"Authenticated\")} (via ZERO_TOKEN env var)`,\n );\n }\n console.log(` API: ${apiUrl}`);\n console.log();\n\n // Org section\n if (activeOrg) {\n console.log(chalk.bold(\"Org:\"));\n console.log(` Active: ${activeOrg}`);\n }\n}\n\nexport const zeroWhoamiCommand = new Command()\n .name(\"whoami\")\n .description(\"Show agent identity, run ID, and capabilities\")\n .option(\"--permissions\", \"Show full permission details for each connector\")\n .addHelpText(\n \"after\",\n `\nExamples:\n zero whoami\n zero whoami --permissions\n\nNotes:\n - Inside sandbox: shows agent ID, run ID, org ID, and granted capabilities\n - Use --permissions to see detailed permission breakdown per connector\n - Your agent ID is also available as $ZERO_AGENT_ID`,\n )\n .action(\n withErrorHandler(async (options: { permissions?: boolean }) => {\n if (isInsideSandbox()) {\n await showSandboxInfo(options.permissions ?? false);\n } else {\n await showLocalInfo();\n }\n }),\n );\n"],"mappings":"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","names":["unknownIcon"]}
@@ -3,11 +3,11 @@ import { createRequire as __createRequire } from "node:module";
3
3
  const require = __createRequire(import.meta.url);
4
4
  import {
5
5
  getModelDisplayName
6
- } from "./chunk-YL5CDK4E.js";
6
+ } from "./chunk-SVFOPAWB.js";
7
7
  import {
8
8
  isInteractive,
9
9
  promptConfirm
10
- } from "./chunk-HTTADLT3.js";
10
+ } from "./chunk-NDYPPVD3.js";
11
11
  import {
12
12
  copyWorkflow,
13
13
  createWorkflow,
@@ -25,13 +25,13 @@ import {
25
25
  listZeroModelPolicies,
26
26
  updateWorkflow,
27
27
  updateWorkflowAutomation
28
- } from "./chunk-4GLJF77C.js";
29
- import "./chunk-H6BEDAS4.js";
28
+ } from "./chunk-KA75HGXU.js";
29
+ import "./chunk-QJI3SAUY.js";
30
30
  import "./chunk-ANOLYIPL.js";
31
31
  import {
32
32
  source_default,
33
33
  withErrorHandler
34
- } from "./chunk-NEXYY3VO.js";
34
+ } from "./chunk-V2FTIYTG.js";
35
35
  import {
36
36
  isFeatureEnabled
37
37
  } from "./chunk-WHCP2H2S.js";
@@ -2848,4 +2848,4 @@ Examples:
2848
2848
  export {
2849
2849
  zeroWorkflowCommand
2850
2850
  };
2851
- //# sourceMappingURL=workflow-27BFGSGL.js.map
2851
+ //# sourceMappingURL=workflow-UWMDJILQ.js.map