@vm0/cli 9.229.3 → 9.230.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.
- package/{agent-EUQOOVOG.js → agent-FCL6CFCY.js} +4 -4
- package/{banking-IPRIHZ5L.js → banking-XVDLOGRP.js} +2 -2
- package/{chat-2BD4NHJ2.js → chat-Q4WMIW5L.js} +3 -3
- package/{chunk-L672HPRM.js → chunk-2LEPWT6S.js} +177 -341
- package/chunk-2LEPWT6S.js.map +1 -0
- package/{chunk-JLUZIHO2.js → chunk-7MFC34LC.js} +2 -2
- package/{chunk-4PCCZKIC.js → chunk-7NBV4ZZX.js} +3 -3
- package/{chunk-6I7Q7HMK.js → chunk-CIKQJL32.js} +2 -2
- package/{chunk-L2DDF7GH.js → chunk-EFDRXQ2P.js} +3 -3
- package/{chunk-O53LVCQ5.js → chunk-LMLY4WEM.js} +307 -1
- package/chunk-LMLY4WEM.js.map +1 -0
- package/{chunk-O5KMC65A.js → chunk-NZ2B6CN2.js} +2 -2
- package/{chunk-F65KIUSP.js → chunk-UL3G2RBN.js} +2 -2
- package/{chunk-EGEWAV6H.js → chunk-ZMRJIJ4N.js} +2 -2
- package/{computer-use-E42XCIGP.js → computer-use-LY2ALALU.js} +2 -2
- package/{connector-3ODP6BD7.js → connector-7URB3ERJ.js} +2 -2
- package/{credit-364U5CBB.js → credit-D6XK3CRQ.js} +2 -2
- package/{developer-support-GM6PM67L.js → developer-support-KFOQ76KE.js} +2 -2
- package/{doctor-WM6KP3U6.js → doctor-3YMJMI4T.js} +5 -5
- package/{generate-YAHIDFDU.js → generate-C6OAVJU4.js} +2 -2
- package/{github-TBCXRDNC.js → github-VOU5DBJZ.js} +2 -2
- package/{goal-HV5DVVIV.js → goal-RCDL2NC2.js} +2 -2
- package/{host-7JMGNVLG.js → host-2TAO5DVU.js} +2 -2
- package/index.js +13 -13
- package/{logs-ERQEJ7VI.js → logs-HDYKVVZG.js} +6 -6
- package/{maps-FF62RNZG.js → maps-IHWWBYN5.js} +2 -2
- package/memory-IP6HIL4C.js +182 -0
- package/memory-IP6HIL4C.js.map +1 -0
- package/{model-QSKAKHGE.js → model-BKU22SXT.js} +3 -3
- package/{model-provider-HWG6ABV6.js → model-provider-NA2MWNFZ.js} +3 -3
- package/{org-5LQHCCOM.js → org-5SB337RR.js} +2 -2
- package/package.json +1 -1
- package/{phone-6B25XKL2.js → phone-GQY3OSWI.js} +2 -2
- package/{preference-E6PQXEDE.js → preference-TV7R74NT.js} +2 -2
- package/{relationship-BYG7LRD3.js → relationship-KG7FXCMR.js} +2 -2
- package/{resource-3DSKPAQ2.js → resource-REUQZZMH.js} +2 -2
- package/{search-GRP2KRWQ.js → search-RVTVLHDF.js} +6 -6
- package/{secret-AZZTUOIV.js → secret-FONBV3QU.js} +3 -3
- package/{slack-GKYAQI3R.js → slack-K5S2D6F3.js} +2 -2
- package/{telegram-HPBWZUST.js → telegram-VD6DM252.js} +2 -2
- package/{variable-Q2MIGTKM.js → variable-W72SGBO7.js} +2 -2
- package/{web-4LT5GQNA.js → web-PRDRAXN6.js} +2 -2
- package/{whoami-X2EZALUL.js → whoami-Q5LT2RXX.js} +4 -4
- package/{workflow-AZXLZ2XU.js → workflow-3AEER7AC.js} +2 -2
- package/zero.js +40 -31
- package/zero.js.map +1 -1
- package/chunk-L672HPRM.js.map +0 -1
- package/chunk-O53LVCQ5.js.map +0 -1
- /package/{agent-EUQOOVOG.js.map → agent-FCL6CFCY.js.map} +0 -0
- /package/{banking-IPRIHZ5L.js.map → banking-XVDLOGRP.js.map} +0 -0
- /package/{chat-2BD4NHJ2.js.map → chat-Q4WMIW5L.js.map} +0 -0
- /package/{chunk-JLUZIHO2.js.map → chunk-7MFC34LC.js.map} +0 -0
- /package/{chunk-4PCCZKIC.js.map → chunk-7NBV4ZZX.js.map} +0 -0
- /package/{chunk-6I7Q7HMK.js.map → chunk-CIKQJL32.js.map} +0 -0
- /package/{chunk-L2DDF7GH.js.map → chunk-EFDRXQ2P.js.map} +0 -0
- /package/{chunk-O5KMC65A.js.map → chunk-NZ2B6CN2.js.map} +0 -0
- /package/{chunk-F65KIUSP.js.map → chunk-UL3G2RBN.js.map} +0 -0
- /package/{chunk-EGEWAV6H.js.map → chunk-ZMRJIJ4N.js.map} +0 -0
- /package/{computer-use-E42XCIGP.js.map → computer-use-LY2ALALU.js.map} +0 -0
- /package/{connector-3ODP6BD7.js.map → connector-7URB3ERJ.js.map} +0 -0
- /package/{credit-364U5CBB.js.map → credit-D6XK3CRQ.js.map} +0 -0
- /package/{developer-support-GM6PM67L.js.map → developer-support-KFOQ76KE.js.map} +0 -0
- /package/{doctor-WM6KP3U6.js.map → doctor-3YMJMI4T.js.map} +0 -0
- /package/{generate-YAHIDFDU.js.map → generate-C6OAVJU4.js.map} +0 -0
- /package/{github-TBCXRDNC.js.map → github-VOU5DBJZ.js.map} +0 -0
- /package/{goal-HV5DVVIV.js.map → goal-RCDL2NC2.js.map} +0 -0
- /package/{host-7JMGNVLG.js.map → host-2TAO5DVU.js.map} +0 -0
- /package/{logs-ERQEJ7VI.js.map → logs-HDYKVVZG.js.map} +0 -0
- /package/{maps-FF62RNZG.js.map → maps-IHWWBYN5.js.map} +0 -0
- /package/{model-QSKAKHGE.js.map → model-BKU22SXT.js.map} +0 -0
- /package/{model-provider-HWG6ABV6.js.map → model-provider-NA2MWNFZ.js.map} +0 -0
- /package/{org-5LQHCCOM.js.map → org-5SB337RR.js.map} +0 -0
- /package/{phone-6B25XKL2.js.map → phone-GQY3OSWI.js.map} +0 -0
- /package/{preference-E6PQXEDE.js.map → preference-TV7R74NT.js.map} +0 -0
- /package/{relationship-BYG7LRD3.js.map → relationship-KG7FXCMR.js.map} +0 -0
- /package/{resource-3DSKPAQ2.js.map → resource-REUQZZMH.js.map} +0 -0
- /package/{search-GRP2KRWQ.js.map → search-RVTVLHDF.js.map} +0 -0
- /package/{secret-AZZTUOIV.js.map → secret-FONBV3QU.js.map} +0 -0
- /package/{slack-GKYAQI3R.js.map → slack-K5S2D6F3.js.map} +0 -0
- /package/{telegram-HPBWZUST.js.map → telegram-VD6DM252.js.map} +0 -0
- /package/{variable-Q2MIGTKM.js.map → variable-W72SGBO7.js.map} +0 -0
- /package/{web-4LT5GQNA.js.map → web-PRDRAXN6.js.map} +0 -0
- /package/{whoami-X2EZALUL.js.map → whoami-Q5LT2RXX.js.map} +0 -0
- /package/{workflow-AZXLZ2XU.js.map → workflow-3AEER7AC.js.map} +0 -0
|
@@ -4,7 +4,7 @@ const require = __createRequire(import.meta.url);
|
|
|
4
4
|
import {
|
|
5
5
|
resolveZeroRelationship,
|
|
6
6
|
searchZeroRelationships
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-LMLY4WEM.js";
|
|
8
8
|
import "./chunk-LTDQISD7.js";
|
|
9
9
|
import {
|
|
10
10
|
withErrorHandler
|
|
@@ -185,4 +185,4 @@ var zeroRelationshipCommand = new Command().name("relationship").description("Qu
|
|
|
185
185
|
export {
|
|
186
186
|
zeroRelationshipCommand
|
|
187
187
|
};
|
|
188
|
-
//# sourceMappingURL=relationship-
|
|
188
|
+
//# sourceMappingURL=relationship-KG7FXCMR.js.map
|
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
} from "./chunk-DKOCDBW4.js";
|
|
17
17
|
import {
|
|
18
18
|
getRegistryResourceDownload
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-LMLY4WEM.js";
|
|
20
20
|
import "./chunk-LTDQISD7.js";
|
|
21
21
|
import {
|
|
22
22
|
withErrorHandler
|
|
@@ -139,4 +139,4 @@ export {
|
|
|
139
139
|
findRegistryResourceForPull,
|
|
140
140
|
zeroResourceCommand
|
|
141
141
|
};
|
|
142
|
-
//# sourceMappingURL=resource-
|
|
142
|
+
//# sourceMappingURL=resource-REUQZZMH.js.map
|
|
@@ -3,20 +3,20 @@ import { createRequire as __createRequire } from "node:module";
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
runLogsSearch
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-EFDRXQ2P.js";
|
|
7
7
|
import {
|
|
8
8
|
formatIsoTimestamp,
|
|
9
9
|
isUUID,
|
|
10
10
|
parseBoundedLogCount,
|
|
11
11
|
parseSearchQuery,
|
|
12
12
|
parseTime
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-2LEPWT6S.js";
|
|
14
14
|
import "./chunk-DKOCDBW4.js";
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-7MFC34LC.js";
|
|
16
|
+
import "./chunk-UL3G2RBN.js";
|
|
17
17
|
import {
|
|
18
18
|
searchZeroChat
|
|
19
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-LMLY4WEM.js";
|
|
20
20
|
import "./chunk-LTDQISD7.js";
|
|
21
21
|
import {
|
|
22
22
|
withErrorHandler
|
|
@@ -201,4 +201,4 @@ export {
|
|
|
201
201
|
buildSlackRecipe,
|
|
202
202
|
zeroSearchCommand
|
|
203
203
|
};
|
|
204
|
-
//# sourceMappingURL=search-
|
|
204
|
+
//# sourceMappingURL=search-RVTVLHDF.js.map
|
|
@@ -3,7 +3,7 @@ import { createRequire as __createRequire } from "node:module";
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
getConnectorStoredSecretDisplayInfo
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-UL3G2RBN.js";
|
|
7
7
|
import {
|
|
8
8
|
isInteractive,
|
|
9
9
|
promptConfirm,
|
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
deleteZeroSecret,
|
|
14
14
|
listZeroSecrets,
|
|
15
15
|
setZeroSecret
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-LMLY4WEM.js";
|
|
17
17
|
import "./chunk-LTDQISD7.js";
|
|
18
18
|
import {
|
|
19
19
|
withErrorHandler
|
|
@@ -160,4 +160,4 @@ var zeroSecretCommand = new Command().name("secret").description("Read or write
|
|
|
160
160
|
export {
|
|
161
161
|
zeroSecretCommand
|
|
162
162
|
};
|
|
163
|
-
//# sourceMappingURL=secret-
|
|
163
|
+
//# sourceMappingURL=secret-FONBV3QU.js.map
|
|
@@ -6,7 +6,7 @@ import {
|
|
|
6
6
|
downloadSlackFile,
|
|
7
7
|
initSlackFileUpload,
|
|
8
8
|
sendSlackMessage
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-LMLY4WEM.js";
|
|
10
10
|
import "./chunk-LTDQISD7.js";
|
|
11
11
|
import {
|
|
12
12
|
withErrorHandler
|
|
@@ -220,4 +220,4 @@ Examples:
|
|
|
220
220
|
export {
|
|
221
221
|
zeroSlackCommand
|
|
222
222
|
};
|
|
223
|
-
//# sourceMappingURL=slack-
|
|
223
|
+
//# sourceMappingURL=slack-K5S2D6F3.js.map
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
initTelegramFileUpload,
|
|
8
8
|
listTelegramBots,
|
|
9
9
|
sendTelegramMessage
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-LMLY4WEM.js";
|
|
11
11
|
import "./chunk-LTDQISD7.js";
|
|
12
12
|
import {
|
|
13
13
|
withErrorHandler
|
|
@@ -335,4 +335,4 @@ Examples:
|
|
|
335
335
|
export {
|
|
336
336
|
zeroTelegramCommand
|
|
337
337
|
};
|
|
338
|
-
//# sourceMappingURL=telegram-
|
|
338
|
+
//# sourceMappingURL=telegram-VD6DM252.js.map
|
|
@@ -9,7 +9,7 @@ import {
|
|
|
9
9
|
deleteZeroVariable,
|
|
10
10
|
listZeroVariables,
|
|
11
11
|
setZeroVariable
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-LMLY4WEM.js";
|
|
13
13
|
import "./chunk-LTDQISD7.js";
|
|
14
14
|
import {
|
|
15
15
|
withErrorHandler
|
|
@@ -117,4 +117,4 @@ var zeroVariableCommand = new Command().name("variable").description("Read or wr
|
|
|
117
117
|
export {
|
|
118
118
|
zeroVariableCommand
|
|
119
119
|
};
|
|
120
|
-
//# sourceMappingURL=variable-
|
|
120
|
+
//# sourceMappingURL=variable-W72SGBO7.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
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-
|
|
4
|
+
import "./chunk-LMLY4WEM.js";
|
|
5
5
|
import "./chunk-LTDQISD7.js";
|
|
6
6
|
import {
|
|
7
7
|
downloadWebFile,
|
|
@@ -106,4 +106,4 @@ Examples:
|
|
|
106
106
|
export {
|
|
107
107
|
zeroWebCommand
|
|
108
108
|
};
|
|
109
|
-
//# sourceMappingURL=web-
|
|
109
|
+
//# sourceMappingURL=web-PRDRAXN6.js.map
|
|
@@ -4,15 +4,15 @@ const require = __createRequire(import.meta.url);
|
|
|
4
4
|
import {
|
|
5
5
|
loadConnectorPermissionInfos,
|
|
6
6
|
policyIcon
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-CIKQJL32.js";
|
|
8
8
|
import {
|
|
9
9
|
permissionGrantsToFirewallPolicies
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-NZ2B6CN2.js";
|
|
11
11
|
import {
|
|
12
12
|
getZeroAgentUserConnectors,
|
|
13
13
|
listZeroConnectors,
|
|
14
14
|
listZeroUserPermissionGrants
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-LMLY4WEM.js";
|
|
16
16
|
import "./chunk-LTDQISD7.js";
|
|
17
17
|
import {
|
|
18
18
|
getActiveOrg,
|
|
@@ -192,4 +192,4 @@ Notes:
|
|
|
192
192
|
export {
|
|
193
193
|
zeroWhoamiCommand
|
|
194
194
|
};
|
|
195
|
-
//# sourceMappingURL=whoami-
|
|
195
|
+
//# sourceMappingURL=whoami-Q5LT2RXX.js.map
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
listWorkflows,
|
|
20
20
|
updateWorkflow,
|
|
21
21
|
updateWorkflowTrigger
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-LMLY4WEM.js";
|
|
23
23
|
import "./chunk-LTDQISD7.js";
|
|
24
24
|
import {
|
|
25
25
|
withErrorHandler
|
|
@@ -1753,4 +1753,4 @@ Examples:
|
|
|
1753
1753
|
export {
|
|
1754
1754
|
zeroWorkflowCommand
|
|
1755
1755
|
};
|
|
1756
|
-
//# sourceMappingURL=workflow-
|
|
1756
|
+
//# sourceMappingURL=workflow-3AEER7AC.js.map
|
package/zero.js
CHANGED
|
@@ -3,7 +3,7 @@ import { createRequire as __createRequire } from "node:module";
|
|
|
3
3
|
const require = __createRequire(import.meta.url);
|
|
4
4
|
import {
|
|
5
5
|
configureGlobalProxyFromEnv
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-7NBV4ZZX.js";
|
|
7
7
|
import {
|
|
8
8
|
decodeZeroTokenPayload
|
|
9
9
|
} from "./chunk-LRHXR7JT.js";
|
|
@@ -21,6 +21,7 @@ var COMMAND_CAPABILITY_MAP = {
|
|
|
21
21
|
workflow: "agent:read",
|
|
22
22
|
goal: ["goal:read", "goal:agent-result:write", "goal:user-control:write"],
|
|
23
23
|
connector: "connector:read",
|
|
24
|
+
memory: "relationship:read",
|
|
24
25
|
relationship: "relationship:read",
|
|
25
26
|
// "schedule" and "automation" are deliberately absent: the removal stubs
|
|
26
27
|
// stay out of token-scoped (agent) help but remain invokable and visible to
|
|
@@ -52,63 +53,70 @@ var ZERO_COMMAND_DEFINITIONS = [
|
|
|
52
53
|
name: "org",
|
|
53
54
|
description: "Manage organization settings, members, and providers",
|
|
54
55
|
load: async () => {
|
|
55
|
-
return (await import("./org-
|
|
56
|
+
return (await import("./org-5SB337RR.js")).zeroOrgCommand;
|
|
56
57
|
}
|
|
57
58
|
},
|
|
58
59
|
{
|
|
59
60
|
name: "model",
|
|
60
61
|
description: "List available models and model-switching guidance",
|
|
61
62
|
load: async () => {
|
|
62
|
-
return (await import("./model-
|
|
63
|
+
return (await import("./model-BKU22SXT.js")).zeroModelCommand;
|
|
63
64
|
}
|
|
64
65
|
},
|
|
65
66
|
{
|
|
66
67
|
name: "model-provider",
|
|
67
68
|
description: "Inspect model provider routing",
|
|
68
69
|
load: async () => {
|
|
69
|
-
return (await import("./model-provider-
|
|
70
|
+
return (await import("./model-provider-NA2MWNFZ.js")).zeroModelProviderCommand;
|
|
70
71
|
}
|
|
71
72
|
},
|
|
72
73
|
{
|
|
73
74
|
name: "agent",
|
|
74
75
|
description: "View or manage zero agents",
|
|
75
76
|
load: async () => {
|
|
76
|
-
return (await import("./agent-
|
|
77
|
+
return (await import("./agent-FCL6CFCY.js")).zeroAgentCommand;
|
|
77
78
|
}
|
|
78
79
|
},
|
|
79
80
|
{
|
|
80
81
|
name: "connector",
|
|
81
82
|
description: "Check third-party service connections (GitHub, Slack, etc.)",
|
|
82
83
|
load: async () => {
|
|
83
|
-
return (await import("./connector-
|
|
84
|
+
return (await import("./connector-7URB3ERJ.js")).zeroConnectorCommand;
|
|
84
85
|
}
|
|
85
86
|
},
|
|
86
87
|
{
|
|
87
88
|
name: "relationship",
|
|
88
89
|
description: "Query relationship memory",
|
|
89
90
|
load: async () => {
|
|
90
|
-
return (await import("./relationship-
|
|
91
|
+
return (await import("./relationship-KG7FXCMR.js")).zeroRelationshipCommand;
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
name: "memory",
|
|
96
|
+
description: "Recall structured memory",
|
|
97
|
+
load: async () => {
|
|
98
|
+
return (await import("./memory-IP6HIL4C.js")).zeroMemoryCommand;
|
|
91
99
|
}
|
|
92
100
|
},
|
|
93
101
|
{
|
|
94
102
|
name: "credit",
|
|
95
103
|
description: "Create a Stripe checkout link to buy credits",
|
|
96
104
|
load: async () => {
|
|
97
|
-
return (await import("./credit-
|
|
105
|
+
return (await import("./credit-D6XK3CRQ.js")).zeroCreditCommand;
|
|
98
106
|
}
|
|
99
107
|
},
|
|
100
108
|
{
|
|
101
109
|
name: "doctor",
|
|
102
110
|
description: "Diagnose runtime issues (connector health, permission denials)",
|
|
103
111
|
load: async () => {
|
|
104
|
-
return (await import("./doctor-
|
|
112
|
+
return (await import("./doctor-3YMJMI4T.js")).zeroDoctorCommand;
|
|
105
113
|
}
|
|
106
114
|
},
|
|
107
115
|
{
|
|
108
116
|
name: "preference",
|
|
109
117
|
description: "View or update user preferences (timezone, notifications)",
|
|
110
118
|
load: async () => {
|
|
111
|
-
return (await import("./preference-
|
|
119
|
+
return (await import("./preference-TV7R74NT.js")).zeroPreferenceCommand;
|
|
112
120
|
}
|
|
113
121
|
},
|
|
114
122
|
{
|
|
@@ -129,119 +137,119 @@ var ZERO_COMMAND_DEFINITIONS = [
|
|
|
129
137
|
name: "secret",
|
|
130
138
|
description: "Read or write secrets (API keys, tokens)",
|
|
131
139
|
load: async () => {
|
|
132
|
-
return (await import("./secret-
|
|
140
|
+
return (await import("./secret-FONBV3QU.js")).zeroSecretCommand;
|
|
133
141
|
}
|
|
134
142
|
},
|
|
135
143
|
{
|
|
136
144
|
name: "github",
|
|
137
145
|
description: "Upload and download GitHub files",
|
|
138
146
|
load: async () => {
|
|
139
|
-
return (await import("./github-
|
|
147
|
+
return (await import("./github-VOU5DBJZ.js")).zeroGithubCommand;
|
|
140
148
|
}
|
|
141
149
|
},
|
|
142
150
|
{
|
|
143
151
|
name: "slack",
|
|
144
152
|
description: "Send messages, upload files, and download files from Slack as the bot",
|
|
145
153
|
load: async () => {
|
|
146
|
-
return (await import("./slack-
|
|
154
|
+
return (await import("./slack-K5S2D6F3.js")).zeroSlackCommand;
|
|
147
155
|
}
|
|
148
156
|
},
|
|
149
157
|
{
|
|
150
158
|
name: "telegram",
|
|
151
159
|
description: "Inspect bots, send messages, upload files, and download files from Telegram",
|
|
152
160
|
load: async () => {
|
|
153
|
-
return (await import("./telegram-
|
|
161
|
+
return (await import("./telegram-VD6DM252.js")).zeroTelegramCommand;
|
|
154
162
|
}
|
|
155
163
|
},
|
|
156
164
|
{
|
|
157
165
|
name: "phone",
|
|
158
166
|
description: "Send AgentPhone messages, upload files, and download media",
|
|
159
167
|
load: async () => {
|
|
160
|
-
return (await import("./phone-
|
|
168
|
+
return (await import("./phone-GQY3OSWI.js")).zeroPhoneCommand;
|
|
161
169
|
}
|
|
162
170
|
},
|
|
163
171
|
{
|
|
164
172
|
name: "variable",
|
|
165
173
|
description: "Read or write non-sensitive configuration values",
|
|
166
174
|
load: async () => {
|
|
167
|
-
return (await import("./variable-
|
|
175
|
+
return (await import("./variable-W72SGBO7.js")).zeroVariableCommand;
|
|
168
176
|
}
|
|
169
177
|
},
|
|
170
178
|
{
|
|
171
179
|
name: "logs",
|
|
172
180
|
description: "View and search agent run logs",
|
|
173
181
|
load: async () => {
|
|
174
|
-
return (await import("./logs-
|
|
182
|
+
return (await import("./logs-HDYKVVZG.js")).zeroLogsCommand;
|
|
175
183
|
}
|
|
176
184
|
},
|
|
177
185
|
{
|
|
178
186
|
name: "search",
|
|
179
187
|
description: "Search logs, chat, or get a recipe for external sources",
|
|
180
188
|
load: async () => {
|
|
181
|
-
return (await import("./search-
|
|
189
|
+
return (await import("./search-RVTVLHDF.js")).zeroSearchCommand;
|
|
182
190
|
}
|
|
183
191
|
},
|
|
184
192
|
{
|
|
185
193
|
name: "chat",
|
|
186
194
|
description: "Manage the current web chat thread",
|
|
187
195
|
load: async () => {
|
|
188
|
-
return (await import("./chat-
|
|
196
|
+
return (await import("./chat-Q4WMIW5L.js")).zeroChatCommand;
|
|
189
197
|
}
|
|
190
198
|
},
|
|
191
199
|
{
|
|
192
200
|
name: "resource",
|
|
193
201
|
description: "Pull registry resources from private R2-backed archives",
|
|
194
202
|
load: async () => {
|
|
195
|
-
return (await import("./resource-
|
|
203
|
+
return (await import("./resource-REUQZZMH.js")).zeroResourceCommand;
|
|
196
204
|
}
|
|
197
205
|
},
|
|
198
206
|
{
|
|
199
207
|
name: "whoami",
|
|
200
208
|
description: "Show agent identity, run ID, and capabilities",
|
|
201
209
|
load: async () => {
|
|
202
|
-
return (await import("./whoami-
|
|
210
|
+
return (await import("./whoami-Q5LT2RXX.js")).zeroWhoamiCommand;
|
|
203
211
|
}
|
|
204
212
|
},
|
|
205
213
|
{
|
|
206
214
|
name: "workflow",
|
|
207
215
|
description: "Manage workflows",
|
|
208
216
|
load: async () => {
|
|
209
|
-
return (await import("./workflow-
|
|
217
|
+
return (await import("./workflow-3AEER7AC.js")).zeroWorkflowCommand;
|
|
210
218
|
}
|
|
211
219
|
},
|
|
212
220
|
{
|
|
213
221
|
name: "goal",
|
|
214
222
|
description: "Manage the current thread goal",
|
|
215
223
|
load: async () => {
|
|
216
|
-
return (await import("./goal-
|
|
224
|
+
return (await import("./goal-RCDL2NC2.js")).zeroGoalCommand;
|
|
217
225
|
}
|
|
218
226
|
},
|
|
219
227
|
{
|
|
220
228
|
name: "developer-support",
|
|
221
229
|
description: "Submit a diagnostic report to the dev team",
|
|
222
230
|
load: async () => {
|
|
223
|
-
return (await import("./developer-support-
|
|
231
|
+
return (await import("./developer-support-KFOQ76KE.js")).zeroDeveloperSupportCommand;
|
|
224
232
|
}
|
|
225
233
|
},
|
|
226
234
|
{
|
|
227
235
|
name: "computer-use",
|
|
228
236
|
description: "Desktop app computer use through Zero CLI",
|
|
229
237
|
load: async () => {
|
|
230
|
-
return (await import("./computer-use-
|
|
238
|
+
return (await import("./computer-use-LY2ALALU.js")).zeroComputerUseCommand;
|
|
231
239
|
}
|
|
232
240
|
},
|
|
233
241
|
{
|
|
234
242
|
name: "generate",
|
|
235
243
|
description: "Generate assets via vm0's built-in pipelines or get connector skill-invocation guidance",
|
|
236
244
|
load: async () => {
|
|
237
|
-
return (await import("./generate-
|
|
245
|
+
return (await import("./generate-C6OAVJU4.js")).generateCommand;
|
|
238
246
|
}
|
|
239
247
|
},
|
|
240
248
|
{
|
|
241
249
|
name: "web",
|
|
242
250
|
description: "Upload and download files via the web chat endpoint",
|
|
243
251
|
load: async () => {
|
|
244
|
-
return (await import("./web-
|
|
252
|
+
return (await import("./web-PRDRAXN6.js")).zeroWebCommand;
|
|
245
253
|
}
|
|
246
254
|
},
|
|
247
255
|
{
|
|
@@ -255,21 +263,21 @@ var ZERO_COMMAND_DEFINITIONS = [
|
|
|
255
263
|
name: "host",
|
|
256
264
|
description: "Publish static sites and clone owned hosted site files",
|
|
257
265
|
load: async () => {
|
|
258
|
-
return (await import("./host-
|
|
266
|
+
return (await import("./host-2TAO5DVU.js")).zeroHostCommand;
|
|
259
267
|
}
|
|
260
268
|
},
|
|
261
269
|
{
|
|
262
270
|
name: "maps",
|
|
263
271
|
description: "Use managed zero maps services",
|
|
264
272
|
load: async () => {
|
|
265
|
-
return (await import("./maps-
|
|
273
|
+
return (await import("./maps-IHWWBYN5.js")).zeroMapsCommand;
|
|
266
274
|
}
|
|
267
275
|
},
|
|
268
276
|
{
|
|
269
277
|
name: "banking",
|
|
270
278
|
description: "Use managed zero banking services",
|
|
271
279
|
load: async () => {
|
|
272
|
-
return (await import("./banking-
|
|
280
|
+
return (await import("./banking-XVDLOGRP.js")).zeroBankingCommand;
|
|
273
281
|
}
|
|
274
282
|
}
|
|
275
283
|
];
|
|
@@ -351,6 +359,7 @@ function buildZeroHelpText(payload = decodeZeroTokenPayload()) {
|
|
|
351
359
|
" Update yourself? zero agent --help",
|
|
352
360
|
" Manage workflows? zero workflow --help",
|
|
353
361
|
...shouldHideCommand("chat", payload) ? [] : [' Rename this chat? zero chat rename "New title"'],
|
|
362
|
+
...shouldHideCommand("memory", payload) ? [] : [' Recall memory? zero memory recall "customer follow up"'],
|
|
354
363
|
" List generators? zero generate --help",
|
|
355
364
|
' Generate image? zero generate image --raw-prompt "..."',
|
|
356
365
|
' Generate website? zero generate website --prompt "..."',
|
|
@@ -377,7 +386,7 @@ function registerZeroCommands(prog, commands) {
|
|
|
377
386
|
var program = new Command();
|
|
378
387
|
program.name("zero").description(
|
|
379
388
|
"Zero CLI \u2014 interact with the zero platform from inside the sandbox"
|
|
380
|
-
).version("9.
|
|
389
|
+
).version("9.230.0").addHelpText("after", () => {
|
|
381
390
|
return buildZeroHelpText();
|
|
382
391
|
});
|
|
383
392
|
if (process.argv[1]?.endsWith("zero.js") || process.argv[1]?.endsWith("zero.ts") || process.argv[1]?.endsWith("zero")) {
|
package/zero.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/zero.ts"],"sourcesContent":["// Zero CLI entry point - standalone binary for zero platform commands\n// Sentry must be initialized before any other imports\nimport \"./instrument.js\";\nimport { Command } from \"commander\";\nimport { configureGlobalProxyFromEnv } from \"./lib/network/proxy.js\";\nimport {\n decodeZeroTokenPayload,\n type ZeroTokenPayload,\n} from \"./lib/api/zero-token.js\";\n\ninterface ZeroCommandDefinition {\n name: string;\n description: string;\n load: () => Promise<Command>;\n}\n\n/**\n * Map of command names to the capability required to see them.\n * Commands not in this map are hidden when ZERO_TOKEN is active.\n * Use an array when a top-level command has subcommands with different\n * capability gates and any one of them should make the command visible.\n * Use `null` for commands that should always be visible in sandbox.\n */\nconst COMMAND_CAPABILITY_MAP: Record<\n string,\n string | readonly string[] | null\n> = {\n agent: \"agent:read\",\n workflow: \"agent:read\",\n goal: [\"goal:read\", \"goal:agent-result:write\", \"goal:user-control:write\"],\n connector: \"connector:read\",\n relationship: \"relationship:read\",\n // \"schedule\" and \"automation\" are deliberately absent: the removal stubs\n // stay out of token-scoped (agent) help but remain invokable and visible to\n // humans.\n doctor: null,\n credit: \"billing:write\",\n model: null,\n \"model-provider\": null,\n logs: \"agent-run:read\",\n search: \"chat-message:read\",\n chat: [\"chat-thread:read\", \"chat-thread:write\"],\n resource: null,\n github: [\"github:read\", \"github:write\"],\n slack: \"slack:write\",\n telegram: [\"telegram:read\", \"telegram:write\"],\n phone: [\"phone:read\", \"phone:write\"],\n whoami: null,\n \"developer-support\": null,\n \"computer-use\": \"computer-use:write\",\n generate: null,\n web: null,\n video: null,\n host: [\"host:read\", \"host:write\"],\n maps: \"maps:read\",\n banking: \"banking:read\",\n};\n\nconst ZERO_COMMAND_DEFINITIONS: readonly ZeroCommandDefinition[] = [\n {\n name: \"org\",\n description: \"Manage organization settings, members, and providers\",\n load: async () => {\n return (await import(\"./commands/zero/org\")).zeroOrgCommand;\n },\n },\n {\n name: \"model\",\n description: \"List available models and model-switching guidance\",\n load: async () => {\n return (await import(\"./commands/zero/model\")).zeroModelCommand;\n },\n },\n {\n name: \"model-provider\",\n description: \"Inspect model provider routing\",\n load: async () => {\n return (await import(\"./commands/zero/model-provider\"))\n .zeroModelProviderCommand;\n },\n },\n {\n name: \"agent\",\n description: \"View or manage zero agents\",\n load: async () => {\n return (await import(\"./commands/zero/agent\")).zeroAgentCommand;\n },\n },\n {\n name: \"connector\",\n description: \"Check third-party service connections (GitHub, Slack, etc.)\",\n load: async () => {\n return (await import(\"./commands/zero/connector\")).zeroConnectorCommand;\n },\n },\n {\n name: \"relationship\",\n description: \"Query relationship memory\",\n load: async () => {\n return (await import(\"./commands/zero/relationship\"))\n .zeroRelationshipCommand;\n },\n },\n {\n name: \"credit\",\n description: \"Create a Stripe checkout link to buy credits\",\n load: async () => {\n return (await import(\"./commands/zero/credit\")).zeroCreditCommand;\n },\n },\n {\n name: \"doctor\",\n description:\n \"Diagnose runtime issues (connector health, permission denials)\",\n load: async () => {\n return (await import(\"./commands/zero/doctor\")).zeroDoctorCommand;\n },\n },\n {\n name: \"preference\",\n description: \"View or update user preferences (timezone, notifications)\",\n load: async () => {\n return (await import(\"./commands/zero/preference\")).zeroPreferenceCommand;\n },\n },\n {\n name: \"schedule\",\n description:\n \"(removed: use `zero workflow`) Schedules are workflow triggers now\",\n load: async () => {\n return (await import(\"./commands/zero/schedule\")).zeroScheduleCommand;\n },\n },\n {\n name: \"automation\",\n description: \"(removed: use `zero workflow`) Automations are workflows now\",\n load: async () => {\n return (await import(\"./commands/zero/automation\")).zeroAutomationCommand;\n },\n },\n {\n name: \"secret\",\n description: \"Read or write secrets (API keys, tokens)\",\n load: async () => {\n return (await import(\"./commands/zero/secret\")).zeroSecretCommand;\n },\n },\n {\n name: \"github\",\n description: \"Upload and download GitHub files\",\n load: async () => {\n return (await import(\"./commands/zero/github\")).zeroGithubCommand;\n },\n },\n {\n name: \"slack\",\n description:\n \"Send messages, upload files, and download files from Slack as the bot\",\n load: async () => {\n return (await import(\"./commands/zero/slack\")).zeroSlackCommand;\n },\n },\n {\n name: \"telegram\",\n description:\n \"Inspect bots, send messages, upload files, and download files from Telegram\",\n load: async () => {\n return (await import(\"./commands/zero/telegram\")).zeroTelegramCommand;\n },\n },\n {\n name: \"phone\",\n description: \"Send AgentPhone messages, upload files, and download media\",\n load: async () => {\n return (await import(\"./commands/zero/phone\")).zeroPhoneCommand;\n },\n },\n {\n name: \"variable\",\n description: \"Read or write non-sensitive configuration values\",\n load: async () => {\n return (await import(\"./commands/zero/variable\")).zeroVariableCommand;\n },\n },\n {\n name: \"logs\",\n description: \"View and search agent run logs\",\n load: async () => {\n return (await import(\"./commands/zero/logs\")).zeroLogsCommand;\n },\n },\n {\n name: \"search\",\n description: \"Search logs, chat, or get a recipe for external sources\",\n load: async () => {\n return (await import(\"./commands/zero/search\")).zeroSearchCommand;\n },\n },\n {\n name: \"chat\",\n description: \"Manage the current web chat thread\",\n load: async () => {\n return (await import(\"./commands/zero/chat\")).zeroChatCommand;\n },\n },\n {\n name: \"resource\",\n description: \"Pull registry resources from private R2-backed archives\",\n load: async () => {\n return (await import(\"./commands/zero/resource\")).zeroResourceCommand;\n },\n },\n {\n name: \"whoami\",\n description: \"Show agent identity, run ID, and capabilities\",\n load: async () => {\n return (await import(\"./commands/zero/whoami\")).zeroWhoamiCommand;\n },\n },\n {\n name: \"workflow\",\n description: \"Manage workflows\",\n load: async () => {\n return (await import(\"./commands/zero/workflow\")).zeroWorkflowCommand;\n },\n },\n {\n name: \"goal\",\n description: \"Manage the current thread goal\",\n load: async () => {\n return (await import(\"./commands/zero/goal\")).zeroGoalCommand;\n },\n },\n {\n name: \"developer-support\",\n description: \"Submit a diagnostic report to the dev team\",\n load: async () => {\n return (await import(\"./commands/zero/developer-support\"))\n .zeroDeveloperSupportCommand;\n },\n },\n {\n name: \"computer-use\",\n description: \"Desktop app computer use through Zero CLI\",\n load: async () => {\n return (await import(\"./commands/zero/computer-use\"))\n .zeroComputerUseCommand;\n },\n },\n {\n name: \"generate\",\n description:\n \"Generate assets via vm0's built-in pipelines or get connector skill-invocation guidance\",\n load: async () => {\n return (await import(\"./commands/zero/generate\")).generateCommand;\n },\n },\n {\n name: \"web\",\n description: \"Upload and download files via the web chat endpoint\",\n load: async () => {\n return (await import(\"./commands/zero/web\")).zeroWebCommand;\n },\n },\n {\n name: \"video\",\n description: \"Video processing utilities\",\n load: async () => {\n return (await import(\"./commands/zero/video\")).zeroVideoCommand;\n },\n },\n {\n name: \"host\",\n description: \"Publish static sites and clone owned hosted site files\",\n load: async () => {\n return (await import(\"./commands/zero/host\")).zeroHostCommand;\n },\n },\n {\n name: \"maps\",\n description: \"Use managed zero maps services\",\n load: async () => {\n return (await import(\"./commands/zero/maps\")).zeroMapsCommand;\n },\n },\n {\n name: \"banking\",\n description: \"Use managed zero banking services\",\n load: async () => {\n return (await import(\"./commands/zero/banking\")).zeroBankingCommand;\n },\n },\n];\n\nconst ZERO_COMMAND_DEFINITION_BY_NAME = new Map(\n ZERO_COMMAND_DEFINITIONS.map((definition) => {\n return [definition.name, definition];\n }),\n);\n\nfunction createZeroCommandStub(definition: ZeroCommandDefinition): Command {\n return new Command(definition.name).description(definition.description);\n}\n\nfunction buildDefaultCommands(): Command[] {\n return ZERO_COMMAND_DEFINITIONS.map(createZeroCommandStub);\n}\n\nfunction shouldHideCommand(\n name: string,\n payload: ZeroTokenPayload | undefined,\n): boolean {\n if (!payload) return false;\n const requiredCap = COMMAND_CAPABILITY_MAP[name];\n if (requiredCap === undefined) return true;\n if (requiredCap === null) return false;\n if (typeof requiredCap !== \"string\") {\n return !requiredCap.some((capability) => {\n return payload.capabilities.includes(capability);\n });\n }\n return !payload.capabilities.includes(requiredCap);\n}\n\nfunction addZeroCommand(\n prog: Command,\n cmd: Command,\n payload: ZeroTokenPayload | undefined,\n): void {\n const hidden = shouldHideCommand(cmd.name(), payload);\n prog.addCommand(cmd, hidden ? { hidden: true } : {});\n}\n\nfunction getNonOptionArgs(argv: string[]): string[] {\n const args: string[] = [];\n\n for (const arg of argv.slice(2)) {\n if (arg === \"--\") {\n break;\n }\n if (arg.startsWith(\"-\")) {\n continue;\n }\n args.push(arg);\n }\n\n return args;\n}\n\nfunction getRequestedZeroCommandName(argv = process.argv): string | undefined {\n const [firstArg, secondArg] = getNonOptionArgs(argv);\n\n if (!firstArg) {\n return undefined;\n }\n\n if (firstArg === \"help\") {\n return secondArg;\n }\n\n return firstArg;\n}\n\nasync function loadZeroCommand(\n name: string | undefined,\n): Promise<Command | undefined> {\n if (!name) {\n return undefined;\n }\n\n return ZERO_COMMAND_DEFINITION_BY_NAME.get(name)?.load();\n}\n\nexport function buildZeroHelpText(\n payload: ZeroTokenPayload | undefined = decodeZeroTokenPayload(),\n): string {\n const canReadHost = !payload || payload.capabilities.includes(\"host:read\");\n const canWriteHost = !payload || payload.capabilities.includes(\"host:write\");\n const examples = [\n \" Check a connector? zero doctor check-connector --env-name <ENV_NAME>\",\n ...(payload && !payload.capabilities.includes(\"billing:read\")\n ? []\n : [\" Check credits? zero doctor credit\"]),\n ...(shouldHideCommand(\"credit\", payload)\n ? []\n : [\" Buy credits? zero credit 20000\"]),\n \" Send a Slack message? zero slack message send --help\",\n \" Upload GitHub? zero github upload-file --help\",\n \" Download GitHub? zero github download-file --help\",\n \" List Telegram bots? zero telegram bot list\",\n \" Send Telegram? zero telegram message send --help\",\n \" Upload Telegram? zero telegram upload-file --help\",\n \" Download Telegram? zero telegram download-file --help\",\n \" Send AgentPhone? zero phone message --help\",\n \" Upload AgentPhone? zero phone upload-file --help\",\n \" Download AgentPhone? zero phone download-file --help\",\n \" List models? zero model ls\",\n \" Model routing? zero model-provider ls\",\n \" Update yourself? zero agent --help\",\n \" Manage workflows? zero workflow --help\",\n ...(shouldHideCommand(\"chat\", payload)\n ? []\n : [' Rename this chat? zero chat rename \"New title\"']),\n \" List generators? zero generate --help\",\n ' Generate image? zero generate image --raw-prompt \"...\"',\n ' Generate website? zero generate website --prompt \"...\"',\n ' Generate voice? zero generate voice --prompt \"...\"',\n ...(canWriteHost\n ? [\" Host a static site? zero host ./dist --site my-site --spa\"]\n : []),\n ...(canReadHost\n ? [\" Clone hosted site? zero host clone <public-slug>\"]\n : []),\n ...(shouldHideCommand(\"maps\", payload)\n ? []\n : [\n ' Get directions? zero maps directions --origin \"SFO\" --destination \"Mountain View\" --json',\n ]),\n ...(shouldHideCommand(\"banking\", payload)\n ? []\n : [\" Read bank data? zero banking accounts --json\"]),\n \" Check your identity? zero whoami\",\n ];\n\n return `\\nExamples:\\n${examples.join(\"\\n\")}`;\n}\n\n/**\n * Register commands with visibility based on ZERO_TOKEN capabilities.\n * Commands not granted by the token are registered as hidden via\n * Commander's public `addCommand(cmd, { hidden: true })` API.\n * When no ZERO_TOKEN is present, all commands remain visible.\n *\n * @param commands - override default commands (used in tests)\n */\nexport function registerZeroCommands(\n prog: Command,\n commands?: Command[],\n): void {\n const token = process.env.ZERO_TOKEN;\n const payload = token ? decodeZeroTokenPayload(token) : undefined;\n\n for (const cmd of commands ?? buildDefaultCommands()) {\n addZeroCommand(prog, cmd, payload);\n }\n}\n\nconst program = new Command();\n\ndeclare const __CLI_VERSION__: string;\n\nprogram\n .name(\"zero\")\n .description(\n \"Zero CLI — interact with the zero platform from inside the sandbox\",\n )\n .version(__CLI_VERSION__)\n .addHelpText(\"after\", () => {\n return buildZeroHelpText();\n });\n\nexport { program };\n\nif (\n process.argv[1]?.endsWith(\"zero.js\") ||\n process.argv[1]?.endsWith(\"zero.ts\") ||\n process.argv[1]?.endsWith(\"zero\")\n) {\n await configureGlobalProxyFromEnv();\n const requestedCommand = await loadZeroCommand(getRequestedZeroCommandName());\n registerZeroCommands(\n program,\n requestedCommand ? [requestedCommand] : undefined,\n );\n program.parse();\n}\n"],"mappings":"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","names":[]}
|
|
1
|
+
{"version":3,"sources":["../src/zero.ts"],"sourcesContent":["// Zero CLI entry point - standalone binary for zero platform commands\n// Sentry must be initialized before any other imports\nimport \"./instrument.js\";\nimport { Command } from \"commander\";\nimport { configureGlobalProxyFromEnv } from \"./lib/network/proxy.js\";\nimport {\n decodeZeroTokenPayload,\n type ZeroTokenPayload,\n} from \"./lib/api/zero-token.js\";\n\ninterface ZeroCommandDefinition {\n name: string;\n description: string;\n load: () => Promise<Command>;\n}\n\n/**\n * Map of command names to the capability required to see them.\n * Commands not in this map are hidden when ZERO_TOKEN is active.\n * Use an array when a top-level command has subcommands with different\n * capability gates and any one of them should make the command visible.\n * Use `null` for commands that should always be visible in sandbox.\n */\nconst COMMAND_CAPABILITY_MAP: Record<\n string,\n string | readonly string[] | null\n> = {\n agent: \"agent:read\",\n workflow: \"agent:read\",\n goal: [\"goal:read\", \"goal:agent-result:write\", \"goal:user-control:write\"],\n connector: \"connector:read\",\n memory: \"relationship:read\",\n relationship: \"relationship:read\",\n // \"schedule\" and \"automation\" are deliberately absent: the removal stubs\n // stay out of token-scoped (agent) help but remain invokable and visible to\n // humans.\n doctor: null,\n credit: \"billing:write\",\n model: null,\n \"model-provider\": null,\n logs: \"agent-run:read\",\n search: \"chat-message:read\",\n chat: [\"chat-thread:read\", \"chat-thread:write\"],\n resource: null,\n github: [\"github:read\", \"github:write\"],\n slack: \"slack:write\",\n telegram: [\"telegram:read\", \"telegram:write\"],\n phone: [\"phone:read\", \"phone:write\"],\n whoami: null,\n \"developer-support\": null,\n \"computer-use\": \"computer-use:write\",\n generate: null,\n web: null,\n video: null,\n host: [\"host:read\", \"host:write\"],\n maps: \"maps:read\",\n banking: \"banking:read\",\n};\n\nconst ZERO_COMMAND_DEFINITIONS: readonly ZeroCommandDefinition[] = [\n {\n name: \"org\",\n description: \"Manage organization settings, members, and providers\",\n load: async () => {\n return (await import(\"./commands/zero/org\")).zeroOrgCommand;\n },\n },\n {\n name: \"model\",\n description: \"List available models and model-switching guidance\",\n load: async () => {\n return (await import(\"./commands/zero/model\")).zeroModelCommand;\n },\n },\n {\n name: \"model-provider\",\n description: \"Inspect model provider routing\",\n load: async () => {\n return (await import(\"./commands/zero/model-provider\"))\n .zeroModelProviderCommand;\n },\n },\n {\n name: \"agent\",\n description: \"View or manage zero agents\",\n load: async () => {\n return (await import(\"./commands/zero/agent\")).zeroAgentCommand;\n },\n },\n {\n name: \"connector\",\n description: \"Check third-party service connections (GitHub, Slack, etc.)\",\n load: async () => {\n return (await import(\"./commands/zero/connector\")).zeroConnectorCommand;\n },\n },\n {\n name: \"relationship\",\n description: \"Query relationship memory\",\n load: async () => {\n return (await import(\"./commands/zero/relationship\"))\n .zeroRelationshipCommand;\n },\n },\n {\n name: \"memory\",\n description: \"Recall structured memory\",\n load: async () => {\n return (await import(\"./commands/zero/memory\")).zeroMemoryCommand;\n },\n },\n {\n name: \"credit\",\n description: \"Create a Stripe checkout link to buy credits\",\n load: async () => {\n return (await import(\"./commands/zero/credit\")).zeroCreditCommand;\n },\n },\n {\n name: \"doctor\",\n description:\n \"Diagnose runtime issues (connector health, permission denials)\",\n load: async () => {\n return (await import(\"./commands/zero/doctor\")).zeroDoctorCommand;\n },\n },\n {\n name: \"preference\",\n description: \"View or update user preferences (timezone, notifications)\",\n load: async () => {\n return (await import(\"./commands/zero/preference\")).zeroPreferenceCommand;\n },\n },\n {\n name: \"schedule\",\n description:\n \"(removed: use `zero workflow`) Schedules are workflow triggers now\",\n load: async () => {\n return (await import(\"./commands/zero/schedule\")).zeroScheduleCommand;\n },\n },\n {\n name: \"automation\",\n description: \"(removed: use `zero workflow`) Automations are workflows now\",\n load: async () => {\n return (await import(\"./commands/zero/automation\")).zeroAutomationCommand;\n },\n },\n {\n name: \"secret\",\n description: \"Read or write secrets (API keys, tokens)\",\n load: async () => {\n return (await import(\"./commands/zero/secret\")).zeroSecretCommand;\n },\n },\n {\n name: \"github\",\n description: \"Upload and download GitHub files\",\n load: async () => {\n return (await import(\"./commands/zero/github\")).zeroGithubCommand;\n },\n },\n {\n name: \"slack\",\n description:\n \"Send messages, upload files, and download files from Slack as the bot\",\n load: async () => {\n return (await import(\"./commands/zero/slack\")).zeroSlackCommand;\n },\n },\n {\n name: \"telegram\",\n description:\n \"Inspect bots, send messages, upload files, and download files from Telegram\",\n load: async () => {\n return (await import(\"./commands/zero/telegram\")).zeroTelegramCommand;\n },\n },\n {\n name: \"phone\",\n description: \"Send AgentPhone messages, upload files, and download media\",\n load: async () => {\n return (await import(\"./commands/zero/phone\")).zeroPhoneCommand;\n },\n },\n {\n name: \"variable\",\n description: \"Read or write non-sensitive configuration values\",\n load: async () => {\n return (await import(\"./commands/zero/variable\")).zeroVariableCommand;\n },\n },\n {\n name: \"logs\",\n description: \"View and search agent run logs\",\n load: async () => {\n return (await import(\"./commands/zero/logs\")).zeroLogsCommand;\n },\n },\n {\n name: \"search\",\n description: \"Search logs, chat, or get a recipe for external sources\",\n load: async () => {\n return (await import(\"./commands/zero/search\")).zeroSearchCommand;\n },\n },\n {\n name: \"chat\",\n description: \"Manage the current web chat thread\",\n load: async () => {\n return (await import(\"./commands/zero/chat\")).zeroChatCommand;\n },\n },\n {\n name: \"resource\",\n description: \"Pull registry resources from private R2-backed archives\",\n load: async () => {\n return (await import(\"./commands/zero/resource\")).zeroResourceCommand;\n },\n },\n {\n name: \"whoami\",\n description: \"Show agent identity, run ID, and capabilities\",\n load: async () => {\n return (await import(\"./commands/zero/whoami\")).zeroWhoamiCommand;\n },\n },\n {\n name: \"workflow\",\n description: \"Manage workflows\",\n load: async () => {\n return (await import(\"./commands/zero/workflow\")).zeroWorkflowCommand;\n },\n },\n {\n name: \"goal\",\n description: \"Manage the current thread goal\",\n load: async () => {\n return (await import(\"./commands/zero/goal\")).zeroGoalCommand;\n },\n },\n {\n name: \"developer-support\",\n description: \"Submit a diagnostic report to the dev team\",\n load: async () => {\n return (await import(\"./commands/zero/developer-support\"))\n .zeroDeveloperSupportCommand;\n },\n },\n {\n name: \"computer-use\",\n description: \"Desktop app computer use through Zero CLI\",\n load: async () => {\n return (await import(\"./commands/zero/computer-use\"))\n .zeroComputerUseCommand;\n },\n },\n {\n name: \"generate\",\n description:\n \"Generate assets via vm0's built-in pipelines or get connector skill-invocation guidance\",\n load: async () => {\n return (await import(\"./commands/zero/generate\")).generateCommand;\n },\n },\n {\n name: \"web\",\n description: \"Upload and download files via the web chat endpoint\",\n load: async () => {\n return (await import(\"./commands/zero/web\")).zeroWebCommand;\n },\n },\n {\n name: \"video\",\n description: \"Video processing utilities\",\n load: async () => {\n return (await import(\"./commands/zero/video\")).zeroVideoCommand;\n },\n },\n {\n name: \"host\",\n description: \"Publish static sites and clone owned hosted site files\",\n load: async () => {\n return (await import(\"./commands/zero/host\")).zeroHostCommand;\n },\n },\n {\n name: \"maps\",\n description: \"Use managed zero maps services\",\n load: async () => {\n return (await import(\"./commands/zero/maps\")).zeroMapsCommand;\n },\n },\n {\n name: \"banking\",\n description: \"Use managed zero banking services\",\n load: async () => {\n return (await import(\"./commands/zero/banking\")).zeroBankingCommand;\n },\n },\n];\n\nconst ZERO_COMMAND_DEFINITION_BY_NAME = new Map(\n ZERO_COMMAND_DEFINITIONS.map((definition) => {\n return [definition.name, definition];\n }),\n);\n\nfunction createZeroCommandStub(definition: ZeroCommandDefinition): Command {\n return new Command(definition.name).description(definition.description);\n}\n\nfunction buildDefaultCommands(): Command[] {\n return ZERO_COMMAND_DEFINITIONS.map(createZeroCommandStub);\n}\n\nfunction shouldHideCommand(\n name: string,\n payload: ZeroTokenPayload | undefined,\n): boolean {\n if (!payload) return false;\n const requiredCap = COMMAND_CAPABILITY_MAP[name];\n if (requiredCap === undefined) return true;\n if (requiredCap === null) return false;\n if (typeof requiredCap !== \"string\") {\n return !requiredCap.some((capability) => {\n return payload.capabilities.includes(capability);\n });\n }\n return !payload.capabilities.includes(requiredCap);\n}\n\nfunction addZeroCommand(\n prog: Command,\n cmd: Command,\n payload: ZeroTokenPayload | undefined,\n): void {\n const hidden = shouldHideCommand(cmd.name(), payload);\n prog.addCommand(cmd, hidden ? { hidden: true } : {});\n}\n\nfunction getNonOptionArgs(argv: string[]): string[] {\n const args: string[] = [];\n\n for (const arg of argv.slice(2)) {\n if (arg === \"--\") {\n break;\n }\n if (arg.startsWith(\"-\")) {\n continue;\n }\n args.push(arg);\n }\n\n return args;\n}\n\nfunction getRequestedZeroCommandName(argv = process.argv): string | undefined {\n const [firstArg, secondArg] = getNonOptionArgs(argv);\n\n if (!firstArg) {\n return undefined;\n }\n\n if (firstArg === \"help\") {\n return secondArg;\n }\n\n return firstArg;\n}\n\nasync function loadZeroCommand(\n name: string | undefined,\n): Promise<Command | undefined> {\n if (!name) {\n return undefined;\n }\n\n return ZERO_COMMAND_DEFINITION_BY_NAME.get(name)?.load();\n}\n\nexport function buildZeroHelpText(\n payload: ZeroTokenPayload | undefined = decodeZeroTokenPayload(),\n): string {\n const canReadHost = !payload || payload.capabilities.includes(\"host:read\");\n const canWriteHost = !payload || payload.capabilities.includes(\"host:write\");\n const examples = [\n \" Check a connector? zero doctor check-connector --env-name <ENV_NAME>\",\n ...(payload && !payload.capabilities.includes(\"billing:read\")\n ? []\n : [\" Check credits? zero doctor credit\"]),\n ...(shouldHideCommand(\"credit\", payload)\n ? []\n : [\" Buy credits? zero credit 20000\"]),\n \" Send a Slack message? zero slack message send --help\",\n \" Upload GitHub? zero github upload-file --help\",\n \" Download GitHub? zero github download-file --help\",\n \" List Telegram bots? zero telegram bot list\",\n \" Send Telegram? zero telegram message send --help\",\n \" Upload Telegram? zero telegram upload-file --help\",\n \" Download Telegram? zero telegram download-file --help\",\n \" Send AgentPhone? zero phone message --help\",\n \" Upload AgentPhone? zero phone upload-file --help\",\n \" Download AgentPhone? zero phone download-file --help\",\n \" List models? zero model ls\",\n \" Model routing? zero model-provider ls\",\n \" Update yourself? zero agent --help\",\n \" Manage workflows? zero workflow --help\",\n ...(shouldHideCommand(\"chat\", payload)\n ? []\n : [' Rename this chat? zero chat rename \"New title\"']),\n ...(shouldHideCommand(\"memory\", payload)\n ? []\n : [' Recall memory? zero memory recall \"customer follow up\"']),\n \" List generators? zero generate --help\",\n ' Generate image? zero generate image --raw-prompt \"...\"',\n ' Generate website? zero generate website --prompt \"...\"',\n ' Generate voice? zero generate voice --prompt \"...\"',\n ...(canWriteHost\n ? [\" Host a static site? zero host ./dist --site my-site --spa\"]\n : []),\n ...(canReadHost\n ? [\" Clone hosted site? zero host clone <public-slug>\"]\n : []),\n ...(shouldHideCommand(\"maps\", payload)\n ? []\n : [\n ' Get directions? zero maps directions --origin \"SFO\" --destination \"Mountain View\" --json',\n ]),\n ...(shouldHideCommand(\"banking\", payload)\n ? []\n : [\" Read bank data? zero banking accounts --json\"]),\n \" Check your identity? zero whoami\",\n ];\n\n return `\\nExamples:\\n${examples.join(\"\\n\")}`;\n}\n\n/**\n * Register commands with visibility based on ZERO_TOKEN capabilities.\n * Commands not granted by the token are registered as hidden via\n * Commander's public `addCommand(cmd, { hidden: true })` API.\n * When no ZERO_TOKEN is present, all commands remain visible.\n *\n * @param commands - override default commands (used in tests)\n */\nexport function registerZeroCommands(\n prog: Command,\n commands?: Command[],\n): void {\n const token = process.env.ZERO_TOKEN;\n const payload = token ? decodeZeroTokenPayload(token) : undefined;\n\n for (const cmd of commands ?? buildDefaultCommands()) {\n addZeroCommand(prog, cmd, payload);\n }\n}\n\nconst program = new Command();\n\ndeclare const __CLI_VERSION__: string;\n\nprogram\n .name(\"zero\")\n .description(\n \"Zero CLI — interact with the zero platform from inside the sandbox\",\n )\n .version(__CLI_VERSION__)\n .addHelpText(\"after\", () => {\n return buildZeroHelpText();\n });\n\nexport { program };\n\nif (\n process.argv[1]?.endsWith(\"zero.js\") ||\n process.argv[1]?.endsWith(\"zero.ts\") ||\n process.argv[1]?.endsWith(\"zero\")\n) {\n await configureGlobalProxyFromEnv();\n const requestedCommand = await loadZeroCommand(getRequestedZeroCommandName());\n registerZeroCommands(\n program,\n requestedCommand ? [requestedCommand] : undefined,\n );\n program.parse();\n}\n"],"mappings":"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","names":[]}
|