@agentuity/cli 0.0.109 → 0.0.111
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/build-report.d.ts +201 -0
- package/dist/build-report.d.ts.map +1 -0
- package/dist/build-report.js +335 -0
- package/dist/build-report.js.map +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +19 -4
- package/dist/cli.js.map +1 -1
- package/dist/cmd/build/entry-generator.d.ts.map +1 -1
- package/dist/cmd/build/entry-generator.js +3 -1
- package/dist/cmd/build/entry-generator.js.map +1 -1
- package/dist/cmd/build/index.d.ts.map +1 -1
- package/dist/cmd/build/index.js +44 -1
- package/dist/cmd/build/index.js.map +1 -1
- package/dist/cmd/build/typecheck.d.ts +7 -1
- package/dist/cmd/build/typecheck.d.ts.map +1 -1
- package/dist/cmd/build/typecheck.js +11 -1
- package/dist/cmd/build/typecheck.js.map +1 -1
- package/dist/cmd/build/vite/agent-discovery.d.ts +1 -1
- package/dist/cmd/build/vite/agent-discovery.d.ts.map +1 -1
- package/dist/cmd/build/vite/agent-discovery.js +3 -3
- package/dist/cmd/build/vite/agent-discovery.js.map +1 -1
- package/dist/cmd/build/vite/index.d.ts +2 -1
- package/dist/cmd/build/vite/index.d.ts.map +1 -1
- package/dist/cmd/build/vite/index.js +3 -2
- package/dist/cmd/build/vite/index.js.map +1 -1
- package/dist/cmd/build/vite/metadata-generator.d.ts.map +1 -1
- package/dist/cmd/build/vite/metadata-generator.js +3 -5
- package/dist/cmd/build/vite/metadata-generator.js.map +1 -1
- package/dist/cmd/build/vite/registry-generator.d.ts +1 -1
- package/dist/cmd/build/vite/registry-generator.d.ts.map +1 -1
- package/dist/cmd/build/vite/registry-generator.js +126 -41
- package/dist/cmd/build/vite/registry-generator.js.map +1 -1
- package/dist/cmd/build/vite/route-discovery.d.ts +6 -0
- package/dist/cmd/build/vite/route-discovery.d.ts.map +1 -1
- package/dist/cmd/build/vite/route-discovery.js +19 -0
- package/dist/cmd/build/vite/route-discovery.js.map +1 -1
- package/dist/cmd/build/vite/vite-builder.d.ts +3 -0
- package/dist/cmd/build/vite/vite-builder.d.ts.map +1 -1
- package/dist/cmd/build/vite/vite-builder.js +10 -2
- package/dist/cmd/build/vite/vite-builder.js.map +1 -1
- package/dist/cmd/build/vite-bundler.d.ts +3 -0
- package/dist/cmd/build/vite-bundler.d.ts.map +1 -1
- package/dist/cmd/build/vite-bundler.js +14 -5
- package/dist/cmd/build/vite-bundler.js.map +1 -1
- package/dist/cmd/cloud/deploy.d.ts.map +1 -1
- package/dist/cmd/cloud/deploy.js +149 -10
- package/dist/cmd/cloud/deploy.js.map +1 -1
- package/dist/cmd/cloud/deployment/show.d.ts.map +1 -1
- package/dist/cmd/cloud/deployment/show.js +0 -1
- 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 +18 -0
- package/dist/cmd/cloud/sandbox/create.js.map +1 -1
- package/dist/cmd/cloud/sandbox/delete.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/delete.js +2 -6
- package/dist/cmd/cloud/sandbox/delete.js.map +1 -1
- package/dist/cmd/cloud/sandbox/download.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/download.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/download.js +89 -0
- package/dist/cmd/cloud/sandbox/download.js.map +1 -0
- package/dist/cmd/cloud/sandbox/env.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/env.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/env.js +90 -0
- package/dist/cmd/cloud/sandbox/env.js.map +1 -0
- package/dist/cmd/cloud/sandbox/get.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/get.js +5 -0
- package/dist/cmd/cloud/sandbox/get.js.map +1 -1
- package/dist/cmd/cloud/sandbox/index.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/index.js +14 -0
- package/dist/cmd/cloud/sandbox/index.js.map +1 -1
- package/dist/cmd/cloud/sandbox/ls.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/ls.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/ls.js +119 -0
- package/dist/cmd/cloud/sandbox/ls.js.map +1 -0
- package/dist/cmd/cloud/sandbox/mkdir.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/mkdir.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/mkdir.js +59 -0
- package/dist/cmd/cloud/sandbox/mkdir.js.map +1 -0
- package/dist/cmd/cloud/sandbox/rm.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/rm.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/rm.js +45 -0
- package/dist/cmd/cloud/sandbox/rm.js.map +1 -0
- package/dist/cmd/cloud/sandbox/rmdir.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/rmdir.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/rmdir.js +59 -0
- package/dist/cmd/cloud/sandbox/rmdir.js.map +1 -0
- package/dist/cmd/cloud/sandbox/snapshot/create.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/create.js +0 -2
- package/dist/cmd/cloud/sandbox/snapshot/create.js.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/get.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/get.js +0 -2
- package/dist/cmd/cloud/sandbox/snapshot/get.js.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/list.d.ts.map +1 -1
- package/dist/cmd/cloud/sandbox/snapshot/list.js +0 -3
- package/dist/cmd/cloud/sandbox/snapshot/list.js.map +1 -1
- package/dist/cmd/cloud/sandbox/upload.d.ts +3 -0
- package/dist/cmd/cloud/sandbox/upload.d.ts.map +1 -0
- package/dist/cmd/cloud/sandbox/upload.js +77 -0
- package/dist/cmd/cloud/sandbox/upload.js.map +1 -0
- package/dist/cmd/dev/index.d.ts.map +1 -1
- package/dist/cmd/dev/index.js +126 -23
- package/dist/cmd/dev/index.js.map +1 -1
- package/dist/cmd/dev/sync.d.ts.map +1 -1
- package/dist/cmd/dev/sync.js +8 -14
- package/dist/cmd/dev/sync.js.map +1 -1
- package/dist/cmd/git/account/add.d.ts +17 -0
- package/dist/cmd/git/account/add.d.ts.map +1 -0
- package/dist/cmd/git/account/add.js +244 -0
- package/dist/cmd/git/account/add.js.map +1 -0
- package/dist/cmd/git/account/index.d.ts +3 -0
- package/dist/cmd/git/account/index.d.ts.map +1 -0
- package/dist/cmd/git/account/index.js +11 -0
- package/dist/cmd/git/account/index.js.map +1 -0
- package/dist/cmd/git/account/list.d.ts +2 -0
- package/dist/cmd/git/account/list.d.ts.map +1 -0
- package/dist/cmd/git/account/list.js +111 -0
- package/dist/cmd/git/account/list.js.map +1 -0
- package/dist/cmd/git/account/remove.d.ts +2 -0
- package/dist/cmd/git/account/remove.d.ts.map +1 -0
- package/dist/cmd/git/account/remove.js +171 -0
- package/dist/cmd/git/account/remove.js.map +1 -0
- package/dist/cmd/git/index.d.ts +3 -0
- package/dist/cmd/git/index.d.ts.map +1 -0
- package/dist/cmd/git/index.js +19 -0
- package/dist/cmd/git/index.js.map +1 -0
- package/dist/cmd/git/link.d.ts +32 -0
- package/dist/cmd/git/link.d.ts.map +1 -0
- package/dist/cmd/git/link.js +357 -0
- package/dist/cmd/git/link.js.map +1 -0
- package/dist/cmd/git/list.d.ts +2 -0
- package/dist/cmd/git/list.d.ts.map +1 -0
- package/dist/cmd/git/list.js +137 -0
- package/dist/cmd/git/list.js.map +1 -0
- package/dist/cmd/git/status.d.ts +2 -0
- package/dist/cmd/git/status.d.ts.map +1 -0
- package/dist/cmd/git/status.js +119 -0
- package/dist/cmd/git/status.js.map +1 -0
- package/dist/cmd/git/unlink.d.ts +2 -0
- package/dist/cmd/git/unlink.d.ts.map +1 -0
- package/dist/cmd/git/unlink.js +98 -0
- package/dist/cmd/git/unlink.js.map +1 -0
- package/dist/cmd/index.d.ts.map +1 -1
- package/dist/cmd/index.js +2 -0
- package/dist/cmd/index.js.map +1 -1
- package/dist/cmd/integration/api.d.ts +61 -0
- package/dist/cmd/integration/api.d.ts.map +1 -0
- package/dist/cmd/integration/api.js +176 -0
- package/dist/cmd/integration/api.js.map +1 -0
- package/dist/cmd/integration/github/connect.d.ts +2 -0
- package/dist/cmd/integration/github/connect.d.ts.map +1 -0
- package/dist/cmd/integration/github/connect.js +197 -0
- package/dist/cmd/integration/github/connect.js.map +1 -0
- package/dist/cmd/integration/github/disconnect.d.ts +2 -0
- package/dist/cmd/integration/github/disconnect.d.ts.map +1 -0
- package/dist/cmd/integration/github/disconnect.js +121 -0
- package/dist/cmd/integration/github/disconnect.js.map +1 -0
- package/dist/cmd/integration/github/index.d.ts +2 -0
- package/dist/cmd/integration/github/index.d.ts.map +1 -0
- package/dist/cmd/integration/github/index.js +21 -0
- package/dist/cmd/integration/github/index.js.map +1 -0
- package/dist/cmd/integration/index.d.ts +2 -0
- package/dist/cmd/integration/index.d.ts.map +1 -0
- package/dist/cmd/integration/index.js +16 -0
- package/dist/cmd/integration/index.js.map +1 -0
- package/dist/cmd/project/auth/generate.d.ts +5 -0
- package/dist/cmd/project/auth/generate.d.ts.map +1 -0
- package/dist/cmd/project/auth/generate.js +102 -0
- package/dist/cmd/project/auth/generate.js.map +1 -0
- package/dist/cmd/project/auth/index.d.ts +2 -0
- package/dist/cmd/project/auth/index.d.ts.map +1 -0
- package/dist/cmd/project/auth/index.js +21 -0
- package/dist/cmd/project/auth/index.js.map +1 -0
- package/dist/cmd/project/auth/init.d.ts +2 -0
- package/dist/cmd/project/auth/init.d.ts.map +1 -0
- package/dist/cmd/project/auth/init.js +220 -0
- package/dist/cmd/project/auth/init.js.map +1 -0
- package/dist/cmd/project/auth/shared.d.ts +88 -0
- package/dist/cmd/project/auth/shared.d.ts.map +1 -0
- package/dist/cmd/project/auth/shared.js +435 -0
- package/dist/cmd/project/auth/shared.js.map +1 -0
- package/dist/cmd/project/index.d.ts.map +1 -1
- package/dist/cmd/project/index.js +9 -1
- package/dist/cmd/project/index.js.map +1 -1
- package/dist/cmd/project/template-flow.d.ts.map +1 -1
- package/dist/cmd/project/template-flow.js +106 -0
- package/dist/cmd/project/template-flow.js.map +1 -1
- package/dist/config.d.ts +2 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +24 -0
- package/dist/config.js.map +1 -1
- package/dist/errors.d.ts +2 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +5 -0
- package/dist/errors.js.map +1 -1
- package/dist/types.d.ts +3 -4
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +5 -2
- package/dist/types.js.map +1 -1
- package/package.json +6 -5
- package/src/build-report.ts +457 -0
- package/src/cli.ts +20 -4
- package/src/cmd/build/entry-generator.ts +3 -1
- package/src/cmd/build/index.ts +51 -1
- package/src/cmd/build/typecheck.ts +19 -1
- package/src/cmd/build/vite/agent-discovery.ts +4 -4
- package/src/cmd/build/vite/index.ts +5 -2
- package/src/cmd/build/vite/metadata-generator.ts +5 -7
- package/src/cmd/build/vite/registry-generator.ts +136 -43
- package/src/cmd/build/vite/route-discovery.ts +20 -0
- package/src/cmd/build/vite/vite-builder.ts +13 -2
- package/src/cmd/build/vite-bundler.ts +17 -4
- package/src/cmd/cloud/deploy.ts +183 -12
- package/src/cmd/cloud/deployment/show.ts +0 -1
- package/src/cmd/cloud/sandbox/create.ts +22 -0
- package/src/cmd/cloud/sandbox/delete.ts +2 -6
- package/src/cmd/cloud/sandbox/download.ts +96 -0
- package/src/cmd/cloud/sandbox/env.ts +104 -0
- package/src/cmd/cloud/sandbox/get.ts +5 -0
- package/src/cmd/cloud/sandbox/index.ts +14 -0
- package/src/cmd/cloud/sandbox/ls.ts +126 -0
- package/src/cmd/cloud/sandbox/mkdir.ts +65 -0
- package/src/cmd/cloud/sandbox/rm.ts +51 -0
- package/src/cmd/cloud/sandbox/rmdir.ts +65 -0
- package/src/cmd/cloud/sandbox/snapshot/create.ts +0 -2
- package/src/cmd/cloud/sandbox/snapshot/get.ts +0 -2
- package/src/cmd/cloud/sandbox/snapshot/list.ts +0 -3
- package/src/cmd/cloud/sandbox/upload.ts +83 -0
- package/src/cmd/dev/index.ts +147 -33
- package/src/cmd/dev/sync.ts +26 -30
- package/src/cmd/git/account/add.ts +317 -0
- package/src/cmd/git/account/index.ts +12 -0
- package/src/cmd/git/account/list.ts +139 -0
- package/src/cmd/git/account/remove.ts +212 -0
- package/src/cmd/git/index.ts +20 -0
- package/src/cmd/git/link.ts +468 -0
- package/src/cmd/git/list.ts +161 -0
- package/src/cmd/git/status.ts +144 -0
- package/src/cmd/git/unlink.ts +117 -0
- package/src/cmd/index.ts +2 -0
- package/src/cmd/integration/api.ts +379 -0
- package/src/cmd/integration/github/connect.ts +242 -0
- package/src/cmd/integration/github/disconnect.ts +149 -0
- package/src/cmd/integration/github/index.ts +21 -0
- package/src/cmd/integration/index.ts +16 -0
- package/src/cmd/project/auth/generate.ts +116 -0
- package/src/cmd/project/auth/index.ts +21 -0
- package/src/cmd/project/auth/init.ts +263 -0
- package/src/cmd/project/auth/shared.ts +534 -0
- package/src/cmd/project/index.ts +9 -1
- package/src/cmd/project/template-flow.ts +125 -0
- package/src/config.ts +34 -0
- package/src/errors.ts +7 -0
- package/src/types.ts +5 -2
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { createCommand } from '../../../types';
|
|
3
|
+
import * as tui from '../../../tui';
|
|
4
|
+
import { createSandboxClient } from './util';
|
|
5
|
+
import { getCommand } from '../../../command-prefix';
|
|
6
|
+
import { sandboxRmDir } from '@agentuity/server';
|
|
7
|
+
const RmDirResponseSchema = z.object({
|
|
8
|
+
success: z.boolean(),
|
|
9
|
+
path: z.string(),
|
|
10
|
+
});
|
|
11
|
+
export const rmdirSubcommand = createCommand({
|
|
12
|
+
name: 'rmdir',
|
|
13
|
+
description: 'Remove a directory from a sandbox',
|
|
14
|
+
tags: ['slow', 'requires-auth'],
|
|
15
|
+
requires: { auth: true, region: true, org: true },
|
|
16
|
+
examples: [
|
|
17
|
+
{
|
|
18
|
+
command: getCommand('cloud sandbox rmdir sbx_abc123 /path/to/dir'),
|
|
19
|
+
description: 'Remove an empty directory from the sandbox',
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
command: getCommand('cloud sandbox rmdir sbx_abc123 /path/to/dir -r'),
|
|
23
|
+
description: 'Remove a directory and all its contents recursively',
|
|
24
|
+
},
|
|
25
|
+
],
|
|
26
|
+
schema: {
|
|
27
|
+
args: z.object({
|
|
28
|
+
sandboxId: z.string().describe('The sandbox ID'),
|
|
29
|
+
path: z.string().describe('Path to the directory to remove'),
|
|
30
|
+
}),
|
|
31
|
+
options: z.object({
|
|
32
|
+
recursive: z
|
|
33
|
+
.boolean()
|
|
34
|
+
.default(false)
|
|
35
|
+
.optional()
|
|
36
|
+
.describe('Remove directory and all contents'),
|
|
37
|
+
}),
|
|
38
|
+
aliases: {
|
|
39
|
+
recursive: ['r'],
|
|
40
|
+
},
|
|
41
|
+
response: RmDirResponseSchema,
|
|
42
|
+
},
|
|
43
|
+
async handler(ctx) {
|
|
44
|
+
const { args, opts, options, auth, region, logger, orgId } = ctx;
|
|
45
|
+
const client = createSandboxClient(logger, auth, region);
|
|
46
|
+
await sandboxRmDir(client, {
|
|
47
|
+
sandboxId: args.sandboxId,
|
|
48
|
+
path: args.path,
|
|
49
|
+
recursive: opts.recursive,
|
|
50
|
+
orgId,
|
|
51
|
+
});
|
|
52
|
+
if (!options.json) {
|
|
53
|
+
tui.success(`Removed directory: ${args.path}`);
|
|
54
|
+
}
|
|
55
|
+
return { success: true, path: args.path };
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
export default rmdirSubcommand;
|
|
59
|
+
//# sourceMappingURL=rmdir.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rmdir.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/rmdir.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,eAAe,GAAG,aAAa,CAAC;IAC5C,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,mCAAmC;IAChD,IAAI,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC;IAC/B,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;IACjD,QAAQ,EAAE;QACT;YACC,OAAO,EAAE,UAAU,CAAC,6CAA6C,CAAC;YAClE,WAAW,EAAE,4CAA4C;SACzD;QACD;YACC,OAAO,EAAE,UAAU,CAAC,gDAAgD,CAAC;YACrE,WAAW,EAAE,qDAAqD;SAClE;KACD;IACD,MAAM,EAAE;QACP,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;YACd,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;YAChD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;SAC5D,CAAC;QACF,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;YACjB,SAAS,EAAE,CAAC;iBACV,OAAO,EAAE;iBACT,OAAO,CAAC,KAAK,CAAC;iBACd,QAAQ,EAAE;iBACV,QAAQ,CAAC,mCAAmC,CAAC;SAC/C,CAAC;QACF,OAAO,EAAE;YACR,SAAS,EAAE,CAAC,GAAG,CAAC;SAChB;QACD,QAAQ,EAAE,mBAAmB;KAC7B;IAED,KAAK,CAAC,OAAO,CAAC,GAAG;QAChB,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;QACjE,MAAM,MAAM,GAAG,mBAAmB,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;QAEzD,MAAM,YAAY,CAAC,MAAM,EAAE;YAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK;SACL,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YACnB,GAAG,CAAC,OAAO,CAAC,sBAAsB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;IAC3C,CAAC;CACD,CAAC,CAAC;AAEH,eAAe,eAAe,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/create.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/create.ts"],"names":[],"mappings":"AAeA,eAAO,MAAM,gBAAgB,yCAmD3B,CAAC;AAEH,eAAe,gBAAgB,CAAC"}
|
|
@@ -6,7 +6,6 @@ import { getCommand } from '../../../../command-prefix';
|
|
|
6
6
|
import { snapshotCreate } from '@agentuity/server';
|
|
7
7
|
const SnapshotCreateResponseSchema = z.object({
|
|
8
8
|
snapshotId: z.string().describe('Snapshot ID'),
|
|
9
|
-
sandboxId: z.string().describe('Source sandbox ID'),
|
|
10
9
|
tag: z.string().optional().nullable().describe('Snapshot tag'),
|
|
11
10
|
sizeBytes: z.number().describe('Snapshot size in bytes'),
|
|
12
11
|
fileCount: z.number().describe('Number of files in snapshot'),
|
|
@@ -53,7 +52,6 @@ export const createSubcommand = createCommand({
|
|
|
53
52
|
}
|
|
54
53
|
return {
|
|
55
54
|
snapshotId: snapshot.snapshotId,
|
|
56
|
-
sandboxId: snapshot.sandboxId,
|
|
57
55
|
tag: snapshot.tag ?? undefined,
|
|
58
56
|
sizeBytes: snapshot.sizeBytes,
|
|
59
57
|
fileCount: snapshot.fileCount,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/create.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC9C,
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/get.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"get.d.ts","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/get.ts"],"names":[],"mappings":"AAoCA,eAAO,MAAM,aAAa,yCAwExB,CAAC;AA6EH,eAAe,aAAa,CAAC"}
|
|
@@ -16,7 +16,6 @@ const SandboxInfoSchema = z.object({
|
|
|
16
16
|
});
|
|
17
17
|
const SnapshotGetResponseSchema = z.object({
|
|
18
18
|
snapshotId: z.string().describe('Snapshot ID'),
|
|
19
|
-
sandboxId: z.string().describe('Source sandbox ID'),
|
|
20
19
|
tag: z.string().nullable().optional().describe('Snapshot tag'),
|
|
21
20
|
sizeBytes: z.number().describe('Snapshot size in bytes'),
|
|
22
21
|
fileCount: z.number().describe('Number of files'),
|
|
@@ -61,7 +60,6 @@ export const getSubcommand = createCommand({
|
|
|
61
60
|
const activeSandboxes = sandboxesResult.sandboxes.filter((s) => s.status === 'idle' || s.status === 'running');
|
|
62
61
|
if (!options.json) {
|
|
63
62
|
tui.info(`Snapshot: ${tui.bold(snapshot.snapshotId)}`);
|
|
64
|
-
console.log(` ${tui.muted('Sandbox:')} ${snapshot.sandboxId}`);
|
|
65
63
|
if (snapshot.tag) {
|
|
66
64
|
console.log(` ${tui.muted('Tag:')} ${snapshot.tag}`);
|
|
67
65
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAI7D,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAEH,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,YAAY,CAAC;IAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAC7C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oBAAoB,CAAC;IACpD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sBAAsB,CAAC;CACvD,CAAC,CAAC;AAEH,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC9C,
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/get.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/list.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"list.d.ts","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/list.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,cAAc,yCA+DzB,CAAC;AAEH,eAAe,cAAc,CAAC"}
|
|
@@ -6,7 +6,6 @@ import { getCommand } from '../../../../command-prefix';
|
|
|
6
6
|
import { snapshotList } from '@agentuity/server';
|
|
7
7
|
const SnapshotInfoSchema = z.object({
|
|
8
8
|
snapshotId: z.string(),
|
|
9
|
-
sandboxId: z.string(),
|
|
10
9
|
tag: z.string().nullable().optional(),
|
|
11
10
|
sizeBytes: z.number(),
|
|
12
11
|
fileCount: z.number(),
|
|
@@ -59,7 +58,6 @@ export const listSubcommand = createCommand({
|
|
|
59
58
|
return {
|
|
60
59
|
ID: snap.snapshotId,
|
|
61
60
|
Tag: snap.tag ?? '-',
|
|
62
|
-
Sandbox: snap.sandboxId,
|
|
63
61
|
Size: tui.formatBytes(snap.sizeBytes),
|
|
64
62
|
Files: snap.fileCount,
|
|
65
63
|
'Created At': snap.createdAt,
|
|
@@ -68,7 +66,6 @@ export const listSubcommand = createCommand({
|
|
|
68
66
|
tui.table(tableData, [
|
|
69
67
|
{ name: 'ID', alignment: 'left' },
|
|
70
68
|
{ name: 'Tag', alignment: 'left' },
|
|
71
|
-
{ name: 'Sandbox', alignment: 'left' },
|
|
72
69
|
{ name: 'Size', alignment: 'right' },
|
|
73
70
|
{ name: 'Files', alignment: 'right' },
|
|
74
71
|
{ name: 'Created At', alignment: 'left' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,GAAG,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,
|
|
1
|
+
{"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../../src/cmd/cloud/sandbox/snapshot/list.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upload.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/upload.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,gBAAgB,sCAiE3B,CAAC;AASH,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { readFileSync, statSync } from 'node:fs';
|
|
3
|
+
import { createCommand } from '../../../types';
|
|
4
|
+
import * as tui from '../../../tui';
|
|
5
|
+
import { createSandboxClient } from './util';
|
|
6
|
+
import { getCommand } from '../../../command-prefix';
|
|
7
|
+
import { sandboxUploadArchive } from '@agentuity/server';
|
|
8
|
+
export const uploadSubcommand = createCommand({
|
|
9
|
+
name: 'upload',
|
|
10
|
+
aliases: ['ul'],
|
|
11
|
+
description: 'Upload a compressed archive to a sandbox and extract it',
|
|
12
|
+
tags: ['slow', 'requires-auth'],
|
|
13
|
+
requires: { auth: true, region: true, org: true },
|
|
14
|
+
examples: [
|
|
15
|
+
{
|
|
16
|
+
command: getCommand('cloud sandbox upload sbx_abc123 ./archive.tar.gz'),
|
|
17
|
+
description: 'Upload and extract a tar.gz archive to sandbox root',
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
command: getCommand('cloud sandbox upload sbx_abc123 ./archive.zip --path /subdir'),
|
|
21
|
+
description: 'Upload and extract a zip archive to a specific directory',
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
command: getCommand('cloud sandbox upload sbx_abc123 ./archive.bin --format tar.gz'),
|
|
25
|
+
description: 'Upload with explicit format specification',
|
|
26
|
+
},
|
|
27
|
+
],
|
|
28
|
+
schema: {
|
|
29
|
+
args: z.object({
|
|
30
|
+
sandboxId: z.string().describe('The sandbox ID'),
|
|
31
|
+
archive: z.string().describe('Path to the archive file to upload'),
|
|
32
|
+
}),
|
|
33
|
+
options: z.object({
|
|
34
|
+
path: z.string().optional().describe('Destination path in sandbox (defaults to root)'),
|
|
35
|
+
format: z
|
|
36
|
+
.enum(['zip', 'tar.gz'])
|
|
37
|
+
.optional()
|
|
38
|
+
.describe('Archive format (auto-detected if not specified)'),
|
|
39
|
+
}),
|
|
40
|
+
response: z.object({
|
|
41
|
+
success: z.boolean(),
|
|
42
|
+
bytes: z.number(),
|
|
43
|
+
}),
|
|
44
|
+
},
|
|
45
|
+
async handler(ctx) {
|
|
46
|
+
const { args, opts, options, auth, region, logger, orgId } = ctx;
|
|
47
|
+
const client = createSandboxClient(logger, auth, region);
|
|
48
|
+
const stat = statSync(args.archive);
|
|
49
|
+
if (!stat.isFile()) {
|
|
50
|
+
logger.fatal(`${args.archive} is not a file`);
|
|
51
|
+
}
|
|
52
|
+
const content = readFileSync(args.archive);
|
|
53
|
+
const bytes = content.length;
|
|
54
|
+
await sandboxUploadArchive(client, {
|
|
55
|
+
sandboxId: args.sandboxId,
|
|
56
|
+
archive: content,
|
|
57
|
+
path: opts.path || '.',
|
|
58
|
+
format: opts.format || '',
|
|
59
|
+
orgId,
|
|
60
|
+
});
|
|
61
|
+
if (!options.json) {
|
|
62
|
+
tui.success(`Uploaded and extracted ${formatSize(bytes)} to sandbox`);
|
|
63
|
+
}
|
|
64
|
+
return { success: true, bytes };
|
|
65
|
+
},
|
|
66
|
+
});
|
|
67
|
+
function formatSize(bytes) {
|
|
68
|
+
if (bytes < 1024)
|
|
69
|
+
return `${bytes} bytes`;
|
|
70
|
+
if (bytes < 1024 * 1024)
|
|
71
|
+
return `${(bytes / 1024).toFixed(1)} KB`;
|
|
72
|
+
if (bytes < 1024 * 1024 * 1024)
|
|
73
|
+
return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
|
|
74
|
+
return `${(bytes / (1024 * 1024 * 1024)).toFixed(1)} GB`;
|
|
75
|
+
}
|
|
76
|
+
export default uploadSubcommand;
|
|
77
|
+
//# sourceMappingURL=upload.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upload.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/upload.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmd/dev/index.ts"],"names":[],"mappings":"AA+IA,eAAO,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cmd/dev/index.ts"],"names":[],"mappings":"AA+IA,eAAO,MAAM,OAAO,mCAo+BlB,CAAC"}
|
package/dist/cmd/dev/index.js
CHANGED
|
@@ -301,6 +301,7 @@ export const command = createCommand({
|
|
|
301
301
|
// Vite stays running and handles frontend changes via HMR
|
|
302
302
|
let shouldRestart = false;
|
|
303
303
|
let gravityProcess = null;
|
|
304
|
+
let gravityHeartbeatInterval = null;
|
|
304
305
|
let stdinListenerRegistered = false; // Track if stdin listener is already registered
|
|
305
306
|
const restartServer = () => {
|
|
306
307
|
shouldRestart = true;
|
|
@@ -320,6 +321,8 @@ export const command = createCommand({
|
|
|
320
321
|
let cleaningUp = false;
|
|
321
322
|
// Track if shutdown was requested (SIGINT/SIGTERM) to break the main loop
|
|
322
323
|
let shutdownRequested = false;
|
|
324
|
+
// Store stdin data handler reference for cleanup
|
|
325
|
+
let stdinDataHandler = null;
|
|
323
326
|
/**
|
|
324
327
|
* Centralized cleanup function for all resources.
|
|
325
328
|
* Called on restart, shutdown, and fatal errors.
|
|
@@ -348,6 +351,11 @@ export const command = createCommand({
|
|
|
348
351
|
catch (err) {
|
|
349
352
|
logger.debug('Error stopping Bun server during cleanup: %s', err);
|
|
350
353
|
}
|
|
354
|
+
// Stop gravity heartbeat interval
|
|
355
|
+
if (gravityHeartbeatInterval) {
|
|
356
|
+
clearInterval(gravityHeartbeatInterval);
|
|
357
|
+
gravityHeartbeatInterval = null;
|
|
358
|
+
}
|
|
351
359
|
// Kill gravity client with SIGTERM first, then SIGKILL as fallback
|
|
352
360
|
if (gravityProcess) {
|
|
353
361
|
logger.debug('Killing gravity process...');
|
|
@@ -404,6 +412,22 @@ export const command = createCommand({
|
|
|
404
412
|
cleaningUp = false;
|
|
405
413
|
}
|
|
406
414
|
else {
|
|
415
|
+
// Clean up stdin keyboard handler right before exiting
|
|
416
|
+
// This must happen AFTER all async cleanup to keep event loop alive
|
|
417
|
+
if (stdinListenerRegistered && process.stdin.isTTY) {
|
|
418
|
+
try {
|
|
419
|
+
if (stdinDataHandler) {
|
|
420
|
+
process.stdin.removeListener('data', stdinDataHandler);
|
|
421
|
+
stdinDataHandler = null;
|
|
422
|
+
}
|
|
423
|
+
process.stdin.setRawMode(false);
|
|
424
|
+
process.stdin.pause();
|
|
425
|
+
process.stdin.unref();
|
|
426
|
+
}
|
|
427
|
+
catch {
|
|
428
|
+
// Ignore errors during final cleanup
|
|
429
|
+
}
|
|
430
|
+
}
|
|
407
431
|
logger.debug('Exiting with code %d', exitCode);
|
|
408
432
|
originalExit(exitCode);
|
|
409
433
|
}
|
|
@@ -420,6 +444,11 @@ export const command = createCommand({
|
|
|
420
444
|
catch (err) {
|
|
421
445
|
logger.debug('Error stopping Bun server for restart: %s', err);
|
|
422
446
|
}
|
|
447
|
+
// Stop gravity heartbeat interval
|
|
448
|
+
if (gravityHeartbeatInterval) {
|
|
449
|
+
clearInterval(gravityHeartbeatInterval);
|
|
450
|
+
gravityHeartbeatInterval = null;
|
|
451
|
+
}
|
|
423
452
|
// Kill gravity client
|
|
424
453
|
if (gravityProcess) {
|
|
425
454
|
try {
|
|
@@ -439,20 +468,33 @@ export const command = createCommand({
|
|
|
439
468
|
};
|
|
440
469
|
// SIGINT/SIGTERM: coordinate shutdown between bundle and dev resources
|
|
441
470
|
let signalHandlersRegistered = false;
|
|
471
|
+
let exitingFromSignal = false;
|
|
442
472
|
if (!signalHandlersRegistered) {
|
|
443
473
|
signalHandlersRegistered = true;
|
|
444
|
-
const safeExit =
|
|
474
|
+
const safeExit = (code, reason) => {
|
|
475
|
+
// Prevent multiple signal handlers from racing
|
|
476
|
+
if (exitingFromSignal)
|
|
477
|
+
return;
|
|
478
|
+
exitingFromSignal = true;
|
|
445
479
|
if (reason) {
|
|
446
480
|
logger.debug('DevMode terminating (%d) due to: %s', code, reason);
|
|
447
481
|
}
|
|
448
482
|
shutdownRequested = true;
|
|
449
|
-
|
|
483
|
+
// Run cleanup and ensure we wait for it to complete before exiting
|
|
484
|
+
cleanup(true, code).catch((err) => {
|
|
485
|
+
logger.debug('Cleanup error: %s', err);
|
|
486
|
+
originalExit(1);
|
|
487
|
+
});
|
|
450
488
|
};
|
|
451
489
|
process.on('SIGINT', () => {
|
|
452
|
-
|
|
490
|
+
safeExit(0, 'SIGINT');
|
|
453
491
|
});
|
|
454
492
|
process.on('SIGTERM', () => {
|
|
455
|
-
|
|
493
|
+
safeExit(0, 'SIGTERM');
|
|
494
|
+
});
|
|
495
|
+
// Handle SIGHUP (terminal closed) - same as SIGINT
|
|
496
|
+
process.on('SIGHUP', () => {
|
|
497
|
+
safeExit(0, 'SIGHUP');
|
|
456
498
|
});
|
|
457
499
|
// Handle uncaught exceptions - clean up and exit rather than limping on
|
|
458
500
|
process.on('uncaughtException', (err) => {
|
|
@@ -466,6 +508,20 @@ export const command = createCommand({
|
|
|
466
508
|
}
|
|
467
509
|
// Ensure resources are always cleaned up on exit (synchronous fallback)
|
|
468
510
|
process.on('exit', () => {
|
|
511
|
+
// Clean up stdin keyboard handler
|
|
512
|
+
if (stdinListenerRegistered && process.stdin.isTTY) {
|
|
513
|
+
try {
|
|
514
|
+
if (stdinDataHandler) {
|
|
515
|
+
process.stdin.removeListener('data', stdinDataHandler);
|
|
516
|
+
}
|
|
517
|
+
process.stdin.setRawMode(false);
|
|
518
|
+
process.stdin.pause();
|
|
519
|
+
process.stdin.unref();
|
|
520
|
+
}
|
|
521
|
+
catch {
|
|
522
|
+
// Ignore errors during exit cleanup
|
|
523
|
+
}
|
|
524
|
+
}
|
|
469
525
|
// Kill gravity client with SIGKILL for immediate termination
|
|
470
526
|
if (gravityProcess && gravityProcess.exitCode === null) {
|
|
471
527
|
try {
|
|
@@ -521,7 +577,19 @@ export const command = createCommand({
|
|
|
521
577
|
const { generateWorkbenchFiles } = await import('../build/vite/workbench-generator');
|
|
522
578
|
await generateWorkbenchFiles(rootDir, project?.projectId ?? '', workbenchConfigData, logger);
|
|
523
579
|
}
|
|
524
|
-
// Step 2:
|
|
580
|
+
// Step 2: Discover agents and routes for registry generation
|
|
581
|
+
const srcDir = join(rootDir, 'src');
|
|
582
|
+
const { discoverAgents } = await import('../build/vite/agent-discovery');
|
|
583
|
+
const { discoverRoutes } = await import('../build/vite/route-discovery');
|
|
584
|
+
const { generateAgentRegistry, generateRouteRegistry } = await import('../build/vite/registry-generator');
|
|
585
|
+
const agentMetadata = await discoverAgents(srcDir, project?.projectId ?? '', deploymentId, logger);
|
|
586
|
+
const { routes, routeInfoList } = await discoverRoutes(srcDir, project?.projectId ?? '', deploymentId, logger);
|
|
587
|
+
// Generate agent and route registries for type augmentation
|
|
588
|
+
// (TypeScript needs these files to exist for proper type inference)
|
|
589
|
+
generateAgentRegistry(srcDir, agentMetadata);
|
|
590
|
+
generateRouteRegistry(srcDir, routeInfoList);
|
|
591
|
+
logger.debug('Agent and route registries generated for dev mode');
|
|
592
|
+
// Step 3: Generate entry file with workbench config
|
|
525
593
|
// Note: vitePort is NOT passed here - the app reads process.env.VITE_PORT at runtime
|
|
526
594
|
const { generateEntryFile } = await import('../build/entry-generator');
|
|
527
595
|
await generateEntryFile({
|
|
@@ -532,7 +600,7 @@ export const command = createCommand({
|
|
|
532
600
|
mode: 'dev',
|
|
533
601
|
workbench: workbenchConfigData.enabled ? workbenchConfigData : undefined,
|
|
534
602
|
});
|
|
535
|
-
// Step
|
|
603
|
+
// Step 4: Bundle the app with LLM patches (dev mode = no minification)
|
|
536
604
|
// This produces .agentuity/app.js with AI Gateway routing patches applied
|
|
537
605
|
const { installExternalsAndBuild } = await import('../build/vite/server-bundler');
|
|
538
606
|
await installExternalsAndBuild({
|
|
@@ -541,23 +609,19 @@ export const command = createCommand({
|
|
|
541
609
|
logger,
|
|
542
610
|
});
|
|
543
611
|
// Generate metadata file (needed for eval ID lookup at runtime)
|
|
544
|
-
|
|
545
|
-
const { discoverRoutes } = await import('../build/vite/route-discovery');
|
|
612
|
+
// Reuse agentMetadata and routes from Step 2
|
|
546
613
|
const { generateMetadata, writeMetadataFile } = await import('../build/vite/metadata-generator');
|
|
547
|
-
const srcDir = join(rootDir, 'src');
|
|
548
614
|
const promises = [];
|
|
549
615
|
// Generate/update prompt files (non-blocking)
|
|
550
616
|
promises.push(import('../build/vite/prompt-generator')
|
|
551
617
|
.then(({ generatePromptFiles }) => generatePromptFiles(srcDir, logger))
|
|
552
618
|
.catch((err) => logger.warn('Failed to generate prompt files: %s', err.message)));
|
|
553
|
-
const agents = await discoverAgents(srcDir, project?.projectId ?? '', deploymentId, logger);
|
|
554
|
-
const { routes } = await discoverRoutes(srcDir, project?.projectId ?? '', deploymentId, logger);
|
|
555
619
|
const metadata = await generateMetadata({
|
|
556
620
|
rootDir,
|
|
557
621
|
projectId: project?.projectId ?? '',
|
|
558
622
|
orgId: project?.orgId ?? '',
|
|
559
623
|
deploymentId,
|
|
560
|
-
agents,
|
|
624
|
+
agents: agentMetadata,
|
|
561
625
|
routes,
|
|
562
626
|
dev: true,
|
|
563
627
|
logger,
|
|
@@ -643,6 +707,7 @@ export const command = createCommand({
|
|
|
643
707
|
process.env.AGENTUITY_STREAM_URL = serviceUrls.stream;
|
|
644
708
|
process.env.AGENTUITY_CLOUD_ORG_ID = project.orgId;
|
|
645
709
|
process.env.AGENTUITY_CLOUD_PROJECT_ID = project.projectId;
|
|
710
|
+
process.env.AGENTUITY_CLOUD_DEPLOYMENT_ID = deploymentId;
|
|
646
711
|
}
|
|
647
712
|
// Set Vite port for asset proxying in bundled app
|
|
648
713
|
process.env.VITE_PORT = String(vitePort);
|
|
@@ -705,7 +770,8 @@ export const command = createCommand({
|
|
|
705
770
|
'--project-id',
|
|
706
771
|
project.projectId,
|
|
707
772
|
'--token',
|
|
708
|
-
process.env.AGENTUITY_SDK_KEY,
|
|
773
|
+
process.env.AGENTUITY_SDK_KEY, // set above
|
|
774
|
+
'--health-check',
|
|
709
775
|
], {
|
|
710
776
|
cwd: rootDir,
|
|
711
777
|
stdout: 'pipe',
|
|
@@ -721,13 +787,41 @@ export const command = createCommand({
|
|
|
721
787
|
description: 'Gravity public URL tunnel',
|
|
722
788
|
});
|
|
723
789
|
}
|
|
724
|
-
// Log gravity output
|
|
790
|
+
// Log gravity output and detect heartbeat port
|
|
725
791
|
(async () => {
|
|
726
792
|
try {
|
|
727
793
|
if (gravityProcess?.stdout) {
|
|
728
794
|
for await (const chunk of gravityProcess.stdout) {
|
|
729
795
|
const text = new TextDecoder().decode(chunk);
|
|
730
|
-
|
|
796
|
+
const trimmed = text.trim();
|
|
797
|
+
// Check for heartbeat port announcement
|
|
798
|
+
const match = trimmed.match(/^HEARTBEAT_PORT=(\d+)$/m);
|
|
799
|
+
if (match) {
|
|
800
|
+
const heartbeatPort = parseInt(match[1], 10);
|
|
801
|
+
logger.debug('Gravity heartbeat port detected: %d', heartbeatPort);
|
|
802
|
+
// Start sending heartbeats every 5 seconds
|
|
803
|
+
if (!gravityHeartbeatInterval) {
|
|
804
|
+
const sendHeartbeat = async () => {
|
|
805
|
+
try {
|
|
806
|
+
await fetch(`http://127.0.0.1:${heartbeatPort}/heartbeat`, {
|
|
807
|
+
method: 'POST',
|
|
808
|
+
signal: AbortSignal.timeout(2000),
|
|
809
|
+
});
|
|
810
|
+
logger.trace('Gravity heartbeat sent');
|
|
811
|
+
}
|
|
812
|
+
catch (err) {
|
|
813
|
+
logger.trace('Gravity heartbeat failed: %s', err);
|
|
814
|
+
}
|
|
815
|
+
};
|
|
816
|
+
// Send initial heartbeat immediately
|
|
817
|
+
sendHeartbeat();
|
|
818
|
+
// Then send every 5 seconds
|
|
819
|
+
gravityHeartbeatInterval = setInterval(sendHeartbeat, 5000);
|
|
820
|
+
}
|
|
821
|
+
}
|
|
822
|
+
else if (trimmed) {
|
|
823
|
+
logger.debug('[gravity] %s', trimmed);
|
|
824
|
+
}
|
|
731
825
|
}
|
|
732
826
|
}
|
|
733
827
|
}
|
|
@@ -765,11 +859,22 @@ export const command = createCommand({
|
|
|
765
859
|
console.log(tui.muted(' c') + ' - clear console');
|
|
766
860
|
console.log(tui.muted(' q') + ' - quit\n');
|
|
767
861
|
};
|
|
768
|
-
|
|
862
|
+
// Store handler reference for cleanup
|
|
863
|
+
stdinDataHandler = (data) => {
|
|
769
864
|
const key = data.toString();
|
|
770
|
-
// Handle Ctrl+C
|
|
771
|
-
if (key === '\u0003') {
|
|
772
|
-
|
|
865
|
+
// Handle Ctrl+C or q - trigger graceful shutdown
|
|
866
|
+
if (key === '\u0003' || key === 'q') {
|
|
867
|
+
// Remove stdin listener immediately to prevent re-entrancy
|
|
868
|
+
if (stdinDataHandler) {
|
|
869
|
+
process.stdin.removeListener('data', stdinDataHandler);
|
|
870
|
+
stdinDataHandler = null;
|
|
871
|
+
}
|
|
872
|
+
// Set shutdown flag and trigger cleanup directly
|
|
873
|
+
shutdownRequested = true;
|
|
874
|
+
cleanup(true, 0).catch((err) => {
|
|
875
|
+
logger.debug('Cleanup error: %s', err);
|
|
876
|
+
originalExit(1);
|
|
877
|
+
});
|
|
773
878
|
return;
|
|
774
879
|
}
|
|
775
880
|
switch (key) {
|
|
@@ -785,14 +890,12 @@ export const command = createCommand({
|
|
|
785
890
|
centerTitle: false,
|
|
786
891
|
});
|
|
787
892
|
break;
|
|
788
|
-
case 'q':
|
|
789
|
-
void cleanup(true, 0);
|
|
790
|
-
break;
|
|
791
893
|
default:
|
|
792
894
|
process.stdout.write(data);
|
|
793
895
|
break;
|
|
794
896
|
}
|
|
795
|
-
}
|
|
897
|
+
};
|
|
898
|
+
process.stdin.on('data', stdinDataHandler);
|
|
796
899
|
}
|
|
797
900
|
showWelcome();
|
|
798
901
|
// Start/resume file watcher now that server is ready
|