@agentuity/cli 0.1.10 → 0.1.12
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/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +6 -10
- package/dist/auth.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +89 -41
- package/dist/cli.js.map +1 -1
- package/dist/cmd/auth/login.d.ts.map +1 -1
- package/dist/cmd/auth/login.js +49 -5
- package/dist/cmd/auth/login.js.map +1 -1
- package/dist/cmd/build/patch/_util.d.ts.map +1 -1
- package/dist/cmd/build/patch/_util.js +6 -2
- package/dist/cmd/build/patch/_util.js.map +1 -1
- package/dist/cmd/cloud/agent/get.d.ts.map +1 -1
- package/dist/cmd/cloud/agent/get.js +10 -6
- package/dist/cmd/cloud/agent/get.js.map +1 -1
- package/dist/cmd/cloud/db/create.d.ts.map +1 -1
- package/dist/cmd/cloud/db/create.js +14 -3
- package/dist/cmd/cloud/db/create.js.map +1 -1
- package/dist/cmd/cloud/db/get.d.ts.map +1 -1
- package/dist/cmd/cloud/db/get.js +13 -3
- package/dist/cmd/cloud/db/get.js.map +1 -1
- package/dist/cmd/cloud/db/list.d.ts.map +1 -1
- package/dist/cmd/cloud/db/list.js +17 -25
- package/dist/cmd/cloud/db/list.js.map +1 -1
- package/dist/cmd/cloud/deployment/show.d.ts.map +1 -1
- package/dist/cmd/cloud/deployment/show.js +50 -37
- package/dist/cmd/cloud/deployment/show.js.map +1 -1
- package/dist/cmd/cloud/sandbox/create.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/create.js +19 -2
- package/dist/cmd/cloud/sandbox/create.js.map +1 -1
- package/dist/cmd/cloud/sandbox/execution/get.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/execution/get.js +14 -11
- package/dist/cmd/cloud/sandbox/execution/get.js.map +1 -1
- package/dist/cmd/cloud/sandbox/get.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/get.js +48 -39
- package/dist/cmd/cloud/sandbox/get.js.map +1 -1
- package/dist/cmd/cloud/sandbox/list.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/list.js +6 -1
- package/dist/cmd/cloud/sandbox/list.js.map +1 -1
- package/dist/cmd/cloud/sandbox/run.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/run.js +5 -1
- package/dist/cmd/cloud/sandbox/run.js.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/build.d.ts +5 -0
- package/dist/cmd/cloud/sandbox/snapshot/build.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/snapshot/build.js +590 -0
- package/dist/cmd/cloud/sandbox/snapshot/build.js.map +1 -0
- package/dist/cmd/cloud/sandbox/snapshot/generate.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/snapshot/generate.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/snapshot/generate.js +129 -0
- package/dist/cmd/cloud/sandbox/snapshot/generate.js.map +1 -0
- package/dist/cmd/cloud/sandbox/snapshot/get.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/get.js +25 -6
- package/dist/cmd/cloud/sandbox/snapshot/get.js.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/index.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/index.js +19 -1
- package/dist/cmd/cloud/sandbox/snapshot/index.js.map +1 -1
- package/dist/cmd/cloud/session/get.d.ts.map +1 -1
- package/dist/cmd/cloud/session/get.js +24 -23
- package/dist/cmd/cloud/session/get.js.map +1 -1
- package/dist/cmd/cloud/session/list.d.ts.map +1 -1
- package/dist/cmd/cloud/session/list.js +7 -2
- package/dist/cmd/cloud/session/list.js.map +1 -1
- package/dist/cmd/cloud/thread/get.d.ts.map +1 -1
- package/dist/cmd/cloud/thread/get.js +11 -8
- package/dist/cmd/cloud/thread/get.js.map +1 -1
- package/dist/cmd/cloud/thread/list.d.ts.map +1 -1
- package/dist/cmd/cloud/thread/list.js +6 -1
- package/dist/cmd/cloud/thread/list.js.map +1 -1
- package/dist/cmd/dev/file-watcher.d.ts.map +1 -1
- package/dist/cmd/dev/file-watcher.js +2 -0
- package/dist/cmd/dev/file-watcher.js.map +1 -1
- package/dist/cmd/dev/index.d.ts.map +1 -1
- package/dist/cmd/dev/index.js +62 -4
- package/dist/cmd/dev/index.js.map +1 -1
- package/dist/cmd/project/auth/shared.js +1 -1
- package/dist/cmd/project/auth/shared.js.map +1 -1
- package/dist/cmd/project/template-flow.d.ts.map +1 -1
- package/dist/cmd/project/template-flow.js +15 -1
- package/dist/cmd/project/template-flow.js.map +1 -1
- package/dist/cmd/setup/index.d.ts.map +1 -1
- package/dist/cmd/setup/index.js +40 -3
- package/dist/cmd/setup/index.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +10 -5
- package/dist/config.js.map +1 -1
- package/dist/steps.d.ts.map +1 -1
- package/dist/steps.js +4 -2
- package/dist/steps.js.map +1 -1
- package/dist/tui.d.ts +11 -1
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +47 -12
- package/dist/tui.js.map +1 -1
- package/dist/utils/apt-validator.js +3 -3
- package/dist/utils/apt-validator.js.map +1 -1
- package/package.json +6 -6
- package/src/auth.ts +12 -11
- package/src/cli.ts +121 -43
- package/src/cmd/auth/login.ts +57 -5
- package/src/cmd/build/patch/_util.ts +6 -2
- package/src/cmd/cloud/agent/get.ts +14 -6
- package/src/cmd/cloud/db/create.ts +15 -3
- package/src/cmd/cloud/db/get.ts +14 -3
- package/src/cmd/cloud/db/list.ts +16 -26
- package/src/cmd/cloud/deployment/show.ts +53 -47
- package/src/cmd/cloud/sandbox/create.ts +20 -2
- package/src/cmd/cloud/sandbox/execution/get.ts +16 -13
- package/src/cmd/cloud/sandbox/get.ts +48 -38
- package/src/cmd/cloud/sandbox/list.ts +6 -1
- package/src/cmd/cloud/sandbox/run.ts +5 -1
- package/src/cmd/cloud/sandbox/snapshot/build.ts +723 -0
- package/src/cmd/cloud/sandbox/snapshot/generate.ts +136 -0
- package/src/cmd/cloud/sandbox/snapshot/get.ts +29 -6
- package/src/cmd/cloud/sandbox/snapshot/index.ts +19 -1
- package/src/cmd/cloud/session/get.ts +25 -29
- package/src/cmd/cloud/session/list.ts +7 -2
- package/src/cmd/cloud/thread/get.ts +12 -8
- package/src/cmd/cloud/thread/list.ts +6 -1
- package/src/cmd/dev/file-watcher.ts +2 -0
- package/src/cmd/dev/index.ts +76 -4
- package/src/cmd/project/auth/shared.ts +1 -1
- package/src/cmd/project/template-flow.ts +15 -1
- package/src/cmd/setup/index.ts +41 -3
- package/src/config.ts +11 -5
- package/src/steps.ts +4 -2
- package/src/tui.ts +61 -12
- package/src/utils/apt-validator.ts +3 -3
|
@@ -29,6 +29,7 @@ const SandboxGetResponseSchema = z.object({
|
|
|
29
29
|
dependencies: z.array(z.string()).optional().describe('Apt packages installed'),
|
|
30
30
|
metadata: z.record(z.string(), z.unknown()).optional().describe('User-defined metadata'),
|
|
31
31
|
resources: SandboxResourcesSchema.optional().describe('Resource limits'),
|
|
32
|
+
url: z.string().optional().describe('Public URL for the sandbox (if network port configured)'),
|
|
32
33
|
});
|
|
33
34
|
|
|
34
35
|
export const getSubcommand = createCommand({
|
|
@@ -72,57 +73,65 @@ export const getSubcommand = createCommand({
|
|
|
72
73
|
? tui.colorError
|
|
73
74
|
: tui.colorMuted;
|
|
74
75
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
console.log(`${tui.muted('Runtime:')} ${result.runtimeName}`);
|
|
86
|
-
}
|
|
87
|
-
if (result.region) {
|
|
88
|
-
console.log(`${tui.muted('Region:')} ${result.region}`);
|
|
89
|
-
}
|
|
90
|
-
if (result.snapshotId || result.snapshotTag) {
|
|
91
|
-
const snapshotDisplay = result.snapshotTag
|
|
92
|
-
? `${result.snapshotTag} ${tui.muted('(' + result.snapshotId + ')')}`
|
|
93
|
-
: result.snapshotId;
|
|
94
|
-
console.log(`${tui.muted('Snapshot:')} ${snapshotDisplay}`);
|
|
95
|
-
}
|
|
96
|
-
console.log(`${tui.muted('Executions:')} ${result.executions}`);
|
|
76
|
+
const snapshotDisplay =
|
|
77
|
+
result.snapshotId || result.snapshotTag
|
|
78
|
+
? result.snapshotTag
|
|
79
|
+
? result.snapshotId
|
|
80
|
+
? `${result.snapshotTag} ${tui.muted('(' + result.snapshotId + ')')}`
|
|
81
|
+
: result.snapshotTag
|
|
82
|
+
: result.snapshotId
|
|
83
|
+
: undefined;
|
|
84
|
+
|
|
85
|
+
let streamDisplay: string | undefined;
|
|
97
86
|
if (
|
|
98
87
|
result.stdoutStreamUrl &&
|
|
99
88
|
result.stderrStreamUrl &&
|
|
100
89
|
result.stdoutStreamUrl === result.stderrStreamUrl
|
|
101
90
|
) {
|
|
102
|
-
|
|
103
|
-
} else {
|
|
104
|
-
if (result.stdoutStreamUrl) {
|
|
105
|
-
console.log(`${tui.muted('Stream (stdout):')} ${tui.link(result.stdoutStreamUrl)}`);
|
|
106
|
-
}
|
|
107
|
-
if (result.stderrStreamUrl) {
|
|
108
|
-
console.log(`${tui.muted('Stream (stderr):')} ${tui.link(result.stderrStreamUrl)}`);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
if (result.dependencies && result.dependencies.length > 0) {
|
|
112
|
-
console.log(`${tui.muted('Dependencies:')} ${result.dependencies.join(', ')}`);
|
|
91
|
+
streamDisplay = tui.link(result.stdoutStreamUrl);
|
|
113
92
|
}
|
|
93
|
+
|
|
94
|
+
const resourceParts: string[] = [];
|
|
114
95
|
if (result.resources) {
|
|
115
|
-
const resourceParts: string[] = [];
|
|
116
96
|
if (result.resources.memory) resourceParts.push(`memory=${result.resources.memory}`);
|
|
117
97
|
if (result.resources.cpu) resourceParts.push(`cpu=${result.resources.cpu}`);
|
|
118
98
|
if (result.resources.disk) resourceParts.push(`disk=${result.resources.disk}`);
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
const tableData: Record<string, string | number> = {
|
|
102
|
+
Sandbox: tui.bold(result.sandboxId),
|
|
103
|
+
};
|
|
104
|
+
|
|
105
|
+
if (result.name) tableData['Name'] = result.name;
|
|
106
|
+
if (result.description) tableData['Description'] = result.description;
|
|
107
|
+
tableData['Status'] = statusColor(result.status);
|
|
108
|
+
tableData['Created'] = result.createdAt;
|
|
109
|
+
if (result.runtimeName) tableData['Runtime'] = result.runtimeName;
|
|
110
|
+
if (result.region) tableData['Region'] = result.region;
|
|
111
|
+
if (snapshotDisplay) tableData['Snapshot'] = snapshotDisplay;
|
|
112
|
+
tableData['Executions'] = result.executions;
|
|
113
|
+
if (streamDisplay) {
|
|
114
|
+
tableData['Stream'] = streamDisplay;
|
|
115
|
+
} else {
|
|
116
|
+
if (result.stdoutStreamUrl)
|
|
117
|
+
tableData['Stream (stdout)'] = tui.link(result.stdoutStreamUrl);
|
|
118
|
+
if (result.stderrStreamUrl)
|
|
119
|
+
tableData['Stream (stderr)'] = tui.link(result.stderrStreamUrl);
|
|
120
|
+
}
|
|
121
|
+
if (result.dependencies && result.dependencies.length > 0) {
|
|
122
|
+
tableData['Dependencies'] = result.dependencies.join(', ');
|
|
123
|
+
}
|
|
124
|
+
if (resourceParts.length > 0) {
|
|
125
|
+
tableData['Resources'] = resourceParts.join(', ');
|
|
122
126
|
}
|
|
123
127
|
if (result.metadata && Object.keys(result.metadata).length > 0) {
|
|
124
|
-
|
|
128
|
+
tableData['Metadata'] = JSON.stringify(result.metadata);
|
|
125
129
|
}
|
|
130
|
+
if (result.url) {
|
|
131
|
+
tableData['URL'] = tui.link(result.url);
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
tui.table([tableData], Object.keys(tableData), { layout: 'vertical', padStart: ' ' });
|
|
126
135
|
}
|
|
127
136
|
|
|
128
137
|
return {
|
|
@@ -142,6 +151,7 @@ export const getSubcommand = createCommand({
|
|
|
142
151
|
dependencies: result.dependencies,
|
|
143
152
|
metadata: result.metadata,
|
|
144
153
|
resources: result.resources,
|
|
154
|
+
url: result.url,
|
|
145
155
|
};
|
|
146
156
|
},
|
|
147
157
|
});
|
|
@@ -59,6 +59,10 @@ export const listSubcommand = createCommand({
|
|
|
59
59
|
command: getCommand('cloud sandbox list --limit 10 --offset 20'),
|
|
60
60
|
description: 'List with pagination',
|
|
61
61
|
},
|
|
62
|
+
{
|
|
63
|
+
command: getCommand('cloud sandbox list --all'),
|
|
64
|
+
description: 'List all sandboxes regardless of project context',
|
|
65
|
+
},
|
|
62
66
|
],
|
|
63
67
|
schema: {
|
|
64
68
|
options: z.object({
|
|
@@ -67,6 +71,7 @@ export const listSubcommand = createCommand({
|
|
|
67
71
|
.optional()
|
|
68
72
|
.describe('Filter by status'),
|
|
69
73
|
projectId: z.string().optional().describe('Filter by project ID'),
|
|
74
|
+
all: z.boolean().optional().describe('List all sandboxes regardless of project context'),
|
|
70
75
|
limit: z.number().optional().describe('Maximum number of results (default: 50, max: 100)'),
|
|
71
76
|
offset: z.number().optional().describe('Pagination offset'),
|
|
72
77
|
}),
|
|
@@ -77,7 +82,7 @@ export const listSubcommand = createCommand({
|
|
|
77
82
|
const { opts, options, auth, project, logger, orgId, config } = ctx;
|
|
78
83
|
const client = await getGlobalCatalystAPIClient(logger, auth, config?.name);
|
|
79
84
|
|
|
80
|
-
const projectId = opts.projectId || project?.projectId;
|
|
85
|
+
const projectId = opts.all ? undefined : opts.projectId || project?.projectId;
|
|
81
86
|
|
|
82
87
|
const result = await sandboxList(client, {
|
|
83
88
|
orgId,
|
|
@@ -20,6 +20,7 @@ export const runSubcommand = createCommand({
|
|
|
20
20
|
description: 'Run a one-shot command in a sandbox (creates, executes, destroys)',
|
|
21
21
|
tags: ['slow', 'requires-auth'],
|
|
22
22
|
requires: { auth: true, region: true, org: true },
|
|
23
|
+
optional: { project: true },
|
|
23
24
|
examples: [
|
|
24
25
|
{
|
|
25
26
|
command: getCommand('cloud sandbox run -- echo "hello world"'),
|
|
@@ -63,12 +64,14 @@ export const runSubcommand = createCommand({
|
|
|
63
64
|
.array(z.string())
|
|
64
65
|
.optional()
|
|
65
66
|
.describe('Apt packages to install (can be specified multiple times)'),
|
|
67
|
+
projectId: z.string().optional().describe('Project ID to associate this sandbox with'),
|
|
66
68
|
}),
|
|
67
69
|
response: SandboxRunResponseSchema,
|
|
68
70
|
},
|
|
69
71
|
|
|
70
72
|
async handler(ctx) {
|
|
71
|
-
const { args, opts, options, auth, region, config, logger, orgId } = ctx;
|
|
73
|
+
const { args, opts, options, auth, region, config, logger, orgId, project } = ctx;
|
|
74
|
+
const projectId = opts.projectId || project?.projectId;
|
|
72
75
|
const client = createSandboxClient(logger, auth, region);
|
|
73
76
|
const started = Date.now();
|
|
74
77
|
|
|
@@ -151,6 +154,7 @@ export const runSubcommand = createCommand({
|
|
|
151
154
|
try {
|
|
152
155
|
const result = await sandboxRun(client, {
|
|
153
156
|
options: {
|
|
157
|
+
projectId,
|
|
154
158
|
runtime: opts.runtime,
|
|
155
159
|
runtimeId: opts.runtimeId,
|
|
156
160
|
name: opts.name,
|