@powerhousedao/ph-cli 4.1.0-dev.12 → 4.1.0-dev.120
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/README.md +21 -4
- package/dist/src/cli.js +14 -1
- package/dist/src/cli.js.map +1 -1
- package/dist/src/commands/connect.d.ts +17 -6
- package/dist/src/commands/connect.d.ts.map +1 -1
- package/dist/src/commands/connect.js +56 -36
- package/dist/src/commands/connect.js.map +1 -1
- package/dist/src/commands/generate.d.ts +4 -4
- package/dist/src/commands/generate.d.ts.map +1 -1
- package/dist/src/commands/generate.js +6 -3
- package/dist/src/commands/generate.js.map +1 -1
- package/dist/src/commands/help.d.ts +1 -1
- package/dist/src/commands/help.d.ts.map +1 -1
- package/dist/src/commands/index.d.ts +11 -4
- package/dist/src/commands/index.d.ts.map +1 -1
- package/dist/src/commands/index.js +11 -29
- package/dist/src/commands/index.js.map +1 -1
- package/dist/src/commands/inspect.d.ts +3 -3
- package/dist/src/commands/inspect.d.ts.map +1 -1
- package/dist/src/commands/install.d.ts +2 -3
- package/dist/src/commands/install.d.ts.map +1 -1
- package/dist/src/commands/install.js.map +1 -1
- package/dist/src/commands/list.d.ts +2 -2
- package/dist/src/commands/list.d.ts.map +1 -1
- package/dist/src/commands/list.js +1 -1
- package/dist/src/commands/list.js.map +1 -1
- package/dist/src/commands/migrate.d.ts +3 -0
- package/dist/src/commands/migrate.d.ts.map +1 -0
- package/dist/src/commands/migrate.js +8 -0
- package/dist/src/commands/migrate.js.map +1 -0
- package/dist/src/commands/register-commands.d.ts +5 -0
- package/dist/src/commands/register-commands.d.ts.map +1 -0
- package/dist/src/commands/register-commands.js +28 -0
- package/dist/src/commands/register-commands.js.map +1 -0
- package/dist/src/commands/service.d.ts +2 -2
- package/dist/src/commands/service.d.ts.map +1 -1
- package/dist/src/commands/service.js.map +1 -1
- package/dist/src/commands/switchboard.d.ts +6 -6
- package/dist/src/commands/switchboard.d.ts.map +1 -1
- package/dist/src/commands/switchboard.js +16 -7
- package/dist/src/commands/switchboard.js.map +1 -1
- package/dist/src/commands/uninstall.d.ts +3 -3
- package/dist/src/commands/uninstall.d.ts.map +1 -1
- package/dist/src/commands/uninstall.js.map +1 -1
- package/dist/src/commands/vetra.d.ts +4 -3
- package/dist/src/commands/vetra.d.ts.map +1 -1
- package/dist/src/commands/vetra.js +11 -6
- package/dist/src/commands/vetra.js.map +1 -1
- package/dist/src/help.d.ts +6 -6
- package/dist/src/help.d.ts.map +1 -1
- package/dist/src/help.js +131 -61
- package/dist/src/help.js.map +1 -1
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/services/connect.d.ts +1 -3
- package/dist/src/services/connect.d.ts.map +1 -1
- package/dist/src/services/connect.js +1 -15
- package/dist/src/services/connect.js.map +1 -1
- package/dist/src/services/generate.d.ts +8 -0
- package/dist/src/services/generate.d.ts.map +1 -1
- package/dist/src/services/generate.js +25 -4
- package/dist/src/services/generate.js.map +1 -1
- package/dist/src/services/migrate/migrate.d.ts +3 -0
- package/dist/src/services/migrate/migrate.d.ts.map +1 -0
- package/dist/src/services/migrate/migrate.js +282 -0
- package/dist/src/services/migrate/migrate.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/document-models.d.ts +2 -0
- package/dist/src/services/migrate/migrations/templates/document-models.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/document-models.js +6 -0
- package/dist/src/services/migrate/migrations/templates/document-models.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/editors.d.ts +2 -0
- package/dist/src/services/migrate/migrations/templates/editors.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/editors.js +6 -0
- package/dist/src/services/migrate/migrations/templates/editors.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/index.d.ts +2 -0
- package/dist/src/services/migrate/migrations/templates/index.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/index.js +7 -0
- package/dist/src/services/migrate/migrations/templates/index.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/packageJson.d.ts +55 -0
- package/dist/src/services/migrate/migrations/templates/packageJson.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/packageJson.js +55 -0
- package/dist/src/services/migrate/migrations/templates/packageJson.js.map +1 -0
- package/dist/src/services/migrate/migrations/templates/tsConfig.d.ts +2 -0
- package/dist/src/services/migrate/migrations/templates/tsConfig.d.ts.map +1 -0
- package/dist/src/services/migrate/migrations/templates/tsConfig.js +45 -0
- package/dist/src/services/migrate/migrations/templates/tsConfig.js.map +1 -0
- package/dist/src/services/switchboard.d.ts +37 -2
- package/dist/src/services/switchboard.d.ts.map +1 -1
- package/dist/src/services/switchboard.js +46 -8
- package/dist/src/services/switchboard.js.map +1 -1
- package/dist/src/services/vetra.d.ts +4 -6
- package/dist/src/services/vetra.d.ts.map +1 -1
- package/dist/src/services/vetra.js +128 -166
- package/dist/src/services/vetra.js.map +1 -1
- package/dist/src/utils/configure-vetra-github-url.d.ts +12 -0
- package/dist/src/utils/configure-vetra-github-url.d.ts.map +1 -0
- package/dist/src/utils/configure-vetra-github-url.js +230 -0
- package/dist/src/utils/configure-vetra-github-url.js.map +1 -0
- package/dist/src/utils.d.ts +11 -4
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.js +18 -14
- package/dist/src/utils.js.map +1 -1
- package/dist/src/version.d.ts +1 -1
- package/dist/src/version.d.ts.map +1 -1
- package/dist/src/version.js +1 -1
- package/dist/src/version.js.map +1 -1
- package/dist/test/utils.test.d.ts +2 -0
- package/dist/test/utils.test.d.ts.map +1 -0
- package/dist/test/utils.test.js +132 -0
- package/dist/test/utils.test.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +19 -21
- package/dist/package.json +0 -58
- package/dist/src/commands/dev.d.ts +0 -6
- package/dist/src/commands/dev.d.ts.map +0 -1
- package/dist/src/commands/dev.js +0 -25
- package/dist/src/commands/dev.js.map +0 -1
- package/dist/src/commands/reactor.d.ts +0 -9
- package/dist/src/commands/reactor.d.ts.map +0 -1
- package/dist/src/commands/reactor.js +0 -42
- package/dist/src/commands/reactor.js.map +0 -1
- package/dist/src/services/dev.d.ts +0 -10
- package/dist/src/services/dev.d.ts.map +0 -1
- package/dist/src/services/dev.js +0 -75
- package/dist/src/services/dev.js.map +0 -1
- package/dist/src/services/reactor.d.ts +0 -35
- package/dist/src/services/reactor.d.ts.map +0 -1
- package/dist/src/services/reactor.js +0 -92
- package/dist/src/services/reactor.js.map +0 -1
- package/dist/tsconfig.lib.tsbuildinfo +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { getConfig } from "@powerhousedao/config/
|
|
2
|
-
import { startSwitchboard as startSwitchboardServer
|
|
1
|
+
import { getConfig } from "@powerhousedao/config/node";
|
|
2
|
+
import { startSwitchboard as startSwitchboardServer } from "@powerhousedao/switchboard/server";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
const defaultSwitchboardOptions = {
|
|
4
|
+
export const defaultSwitchboardOptions = {
|
|
5
5
|
port: 4001,
|
|
6
6
|
dbPath: path.join(process.cwd(), ".ph/read-model.db"),
|
|
7
7
|
drive: {
|
|
@@ -18,15 +18,53 @@ const defaultSwitchboardOptions = {
|
|
|
18
18
|
triggers: [],
|
|
19
19
|
},
|
|
20
20
|
},
|
|
21
|
+
mcp: true,
|
|
21
22
|
};
|
|
23
|
+
function getDefaultVetraSwitchboardOptions(vetraDriveId) {
|
|
24
|
+
return {
|
|
25
|
+
port: 4001,
|
|
26
|
+
dbPath: path.join(process.cwd(), ".ph/read-model.db"),
|
|
27
|
+
drive: {
|
|
28
|
+
id: vetraDriveId,
|
|
29
|
+
slug: vetraDriveId,
|
|
30
|
+
global: {
|
|
31
|
+
name: "Vetra",
|
|
32
|
+
icon: "https://azure-elderly-tortoise-212.mypinata.cloud/ipfs/bafkreibf2xokjqqtomqjd2w2xxmmhvogq4262csevclxh6sbrjgmjfre5u",
|
|
33
|
+
},
|
|
34
|
+
preferredEditor: "vetra-drive-app",
|
|
35
|
+
local: {
|
|
36
|
+
availableOffline: true,
|
|
37
|
+
listeners: [],
|
|
38
|
+
sharingType: "public",
|
|
39
|
+
triggers: [],
|
|
40
|
+
},
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
}
|
|
22
44
|
export async function startSwitchboard(options) {
|
|
23
45
|
const baseConfig = getConfig(options.configFile);
|
|
24
46
|
const { https } = baseConfig.reactor ?? { https: false };
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
47
|
+
const { remoteDrives = [], useVetraDrive = false, vetraDriveId = "vetra", ...serverOptions } = options;
|
|
48
|
+
// Choose the appropriate default configuration
|
|
49
|
+
const defaultOptions = useVetraDrive
|
|
50
|
+
? getDefaultVetraSwitchboardOptions(vetraDriveId)
|
|
51
|
+
: defaultSwitchboardOptions;
|
|
52
|
+
// Only include the default drive if no remote drives are provided
|
|
53
|
+
const finalOptions = remoteDrives.length > 0
|
|
54
|
+
? {
|
|
55
|
+
...defaultOptions,
|
|
56
|
+
drive: undefined, // Don't create default drive when syncing with remote
|
|
57
|
+
...serverOptions,
|
|
58
|
+
https,
|
|
59
|
+
remoteDrives,
|
|
60
|
+
}
|
|
61
|
+
: {
|
|
62
|
+
...defaultOptions,
|
|
63
|
+
...serverOptions,
|
|
64
|
+
https,
|
|
65
|
+
remoteDrives,
|
|
66
|
+
};
|
|
67
|
+
const reactor = await startSwitchboardServer(finalOptions);
|
|
30
68
|
return reactor;
|
|
31
69
|
}
|
|
32
70
|
//# sourceMappingURL=switchboard.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"switchboard.js","sourceRoot":"","sources":["../../../src/services/switchboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"switchboard.js","sourceRoot":"","sources":["../../../src/services/switchboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AAEvD,OAAO,EAAE,gBAAgB,IAAI,sBAAsB,EAAE,MAAM,mCAAmC,CAAC;AAC/F,OAAO,IAAI,MAAM,WAAW,CAAC;AAa7B,MAAM,CAAC,MAAM,yBAAyB,GAAG;IACvC,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,mBAAmB,CAAC;IACrD,KAAK,EAAE;QACL,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,YAAY;QAClB,MAAM,EAAE;YACN,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,qEAAqE;SAC5E;QACD,KAAK,EAAE;YACL,gBAAgB,EAAE,IAAI;YACtB,SAAS,EAAE,EAAE;YACb,WAAW,EAAE,QAAQ;YACrB,QAAQ,EAAE,EAAE;SACb;KACF;IACD,GAAG,EAAE,IAAI;CACmB,CAAC;AAE/B,SAAS,iCAAiC,CACxC,YAAoB;IAEpB,OAAO;QACL,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,mBAAmB,CAAC;QACrD,KAAK,EAAE;YACL,EAAE,EAAE,YAAY;YAChB,IAAI,EAAE,YAAY;YAClB,MAAM,EAAE;gBACN,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,oHAAoH;aAC3H;YACD,eAAe,EAAE,iBAAiB;YAClC,KAAK,EAAE;gBACL,gBAAgB,EAAE,IAAI;gBACtB,SAAS,EAAE,EAAE;gBACb,WAAW,EAAE,QAAQ;gBACrB,QAAQ,EAAE,EAAE;aACb;SACF;KACF,CAAC;AACJ,CAAC;AAQD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAA2B;IAChE,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACjD,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,OAAO,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IACzD,MAAM,EACJ,YAAY,GAAG,EAAE,EACjB,aAAa,GAAG,KAAK,EACrB,YAAY,GAAG,OAAO,EACtB,GAAG,aAAa,EACjB,GAAG,OAAO,CAAC;IAEZ,+CAA+C;IAC/C,MAAM,cAAc,GAAG,aAAa;QAClC,CAAC,CAAC,iCAAiC,CAAC,YAAY,CAAC;QACjD,CAAC,CAAC,yBAAyB,CAAC;IAE9B,kEAAkE;IAClE,MAAM,YAAY,GAChB,YAAY,CAAC,MAAM,GAAG,CAAC;QACrB,CAAC,CAAC;YACE,GAAG,cAAc;YACjB,KAAK,EAAE,SAAS,EAAE,sDAAsD;YACxE,GAAG,aAAa;YAChB,KAAK;YACL,YAAY;SACb;QACH,CAAC,CAAC;YACE,GAAG,cAAc;YACjB,GAAG,aAAa;YAChB,KAAK;YACL,YAAY;SACb,CAAC;IAER,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC,YAAY,CAAC,CAAC;IAE3D,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -1,17 +1,15 @@
|
|
|
1
|
-
import { type StartServerOptions as SwitchboardStartServerOptions } from "@powerhousedao/switchboard/server";
|
|
2
1
|
export type DevOptions = {
|
|
3
2
|
generate?: boolean;
|
|
4
|
-
watch?: boolean;
|
|
5
3
|
switchboardPort?: number;
|
|
6
|
-
reactorPort?: number;
|
|
7
4
|
connectPort?: number;
|
|
8
|
-
disableDefaultDrive?: boolean;
|
|
9
5
|
configFile?: string;
|
|
10
6
|
httpsKeyFile?: string;
|
|
11
7
|
httpsCertFile?: string;
|
|
12
8
|
verbose?: boolean;
|
|
13
9
|
remoteDrive?: string;
|
|
10
|
+
disableConnect?: boolean;
|
|
11
|
+
interactive?: boolean;
|
|
12
|
+
watch?: boolean;
|
|
14
13
|
};
|
|
15
|
-
export declare function
|
|
16
|
-
export declare function startVetra({ generate, watch, switchboardPort, reactorPort, connectPort, disableDefaultDrive, configFile, verbose, remoteDrive, }: DevOptions): Promise<void>;
|
|
14
|
+
export declare function startVetra({ generate, switchboardPort, connectPort, configFile, verbose, remoteDrive, disableConnect, interactive, watch, }: DevOptions): Promise<void>;
|
|
17
15
|
//# sourceMappingURL=vetra.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vetra.d.ts","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vetra.d.ts","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"AAoBA,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAkJF,wBAAsB,UAAU,CAAC,EAC/B,QAAQ,EACR,eAAe,EACf,WAAW,EACX,UAAU,EACV,OAAe,EACf,WAAW,EACX,cAAsB,EACtB,WAAmB,EACnB,KAAa,GACd,EAAE,UAAU,iBAwFZ"}
|
|
@@ -1,211 +1,173 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { blue,
|
|
4
|
-
import {
|
|
5
|
-
import
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
1
|
+
import { VETRA_PROCESSOR_CONFIG_KEY } from "@powerhousedao/config";
|
|
2
|
+
import { getConfig } from "@powerhousedao/config/node";
|
|
3
|
+
import { blue, red } from "colorette";
|
|
4
|
+
import { setLogLevel } from "document-drive";
|
|
5
|
+
import { generateProjectDriveId } from "../utils.js";
|
|
6
|
+
import { configureVetraGithubUrl, sleep, } from "../utils/configure-vetra-github-url.js";
|
|
7
|
+
import { startConnectStudio } from "./connect.js";
|
|
8
|
+
import { defaultSwitchboardOptions } from "./switchboard.js";
|
|
9
|
+
const VETRA_DRIVE_NAME = "vetra";
|
|
10
|
+
const getDefaultVetraUrl = (port) => `http://localhost:${port}/d/${generateProjectDriveId(VETRA_DRIVE_NAME)}`;
|
|
11
|
+
const getDriveId = (driveUrl) => driveUrl?.split("/").pop() ?? generateProjectDriveId(VETRA_DRIVE_NAME);
|
|
12
|
+
async function startVetraPreviewDrive(reactor, port, verbose) {
|
|
13
|
+
const previewDriveId = generateProjectDriveId("preview");
|
|
14
|
+
const previewDrive = {
|
|
15
|
+
id: previewDriveId,
|
|
16
|
+
slug: previewDriveId,
|
|
15
17
|
global: {
|
|
16
|
-
name: "Vetra",
|
|
17
|
-
icon: "https://azure-elderly-tortoise-212.mypinata.cloud/ipfs/
|
|
18
|
+
name: "Vetra Preview",
|
|
19
|
+
icon: "https://azure-elderly-tortoise-212.mypinata.cloud/ipfs/bafkreifddkbopiyvcirf7vaqar74th424r5phlxkdxniirdyg3qgu2ajha",
|
|
18
20
|
},
|
|
19
|
-
preferredEditor: "vetra-drive-app",
|
|
20
21
|
local: {
|
|
21
22
|
availableOffline: true,
|
|
22
23
|
listeners: [],
|
|
23
24
|
sharingType: "public",
|
|
24
25
|
triggers: [],
|
|
25
26
|
},
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
27
|
+
};
|
|
28
|
+
try {
|
|
29
|
+
await reactor.addDrive(previewDrive);
|
|
30
|
+
if (verbose) {
|
|
31
|
+
console.log(blue(`[Vetra Switchboard]: Preview drive created: ${previewDriveId}`));
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
catch {
|
|
35
|
+
// Drive might already exist, which is fine
|
|
36
|
+
if (verbose) {
|
|
37
|
+
console.log(blue(`[Vetra Switchboard]: Preview drive already exists: ${previewDriveId}`));
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return `http://localhost:${port}/d/${previewDriveId}`;
|
|
37
41
|
}
|
|
38
|
-
async function
|
|
39
|
-
|
|
40
|
-
|
|
42
|
+
async function startLocalVetraSwitchboard(options, remoteDrive) {
|
|
43
|
+
const baseConfig = getConfig(options?.configFile);
|
|
44
|
+
const { https } = baseConfig.reactor ?? { https: false };
|
|
41
45
|
try {
|
|
42
|
-
const { port: rawPort, configFile, verbose = false,
|
|
46
|
+
const { port: rawPort, configFile, verbose = false, dev, dbPath, packages, } = options || {};
|
|
43
47
|
const port = typeof rawPort === "string"
|
|
44
48
|
? parseInt(rawPort)
|
|
45
49
|
: typeof rawPort === "number"
|
|
46
50
|
? rawPort
|
|
47
51
|
: 4001;
|
|
48
|
-
|
|
52
|
+
// Convert single remote drive to array if provided
|
|
53
|
+
const remoteDrives = remoteDrive ? [remoteDrive] : undefined;
|
|
54
|
+
// Use the same switchboard service as the standalone command
|
|
55
|
+
const Switchboard = await import("./switchboard.js");
|
|
56
|
+
const { startSwitchboard } = Switchboard;
|
|
57
|
+
const vetraProcessorConfig = {
|
|
58
|
+
interactive: options?.interactiveCodegen,
|
|
59
|
+
driveUrl: remoteDrive ?? getDefaultVetraUrl(port),
|
|
60
|
+
driveId: getDriveId(remoteDrive),
|
|
61
|
+
};
|
|
62
|
+
const processorConfig = new Map();
|
|
63
|
+
processorConfig.set(VETRA_PROCESSOR_CONFIG_KEY, vetraProcessorConfig);
|
|
64
|
+
const vetraDriveId = generateProjectDriveId(VETRA_DRIVE_NAME);
|
|
65
|
+
const switchboard = await startSwitchboard({
|
|
49
66
|
port,
|
|
50
67
|
configFile: configFile || undefined,
|
|
51
|
-
|
|
68
|
+
dev,
|
|
69
|
+
dbPath,
|
|
70
|
+
packages,
|
|
71
|
+
remoteDrives,
|
|
72
|
+
useVetraDrive: true, // Use Vetra drive instead of Powerhouse drive
|
|
73
|
+
vetraDriveId,
|
|
74
|
+
https,
|
|
75
|
+
mcp: true,
|
|
76
|
+
processorConfig,
|
|
77
|
+
disableLocalPackages: !options?.watch,
|
|
52
78
|
});
|
|
79
|
+
// Add preview drive (only in watch mode)
|
|
80
|
+
let previewDriveUrl = null;
|
|
81
|
+
if (options?.watch) {
|
|
82
|
+
previewDriveUrl = await startVetraPreviewDrive(switchboard.reactor, port, verbose);
|
|
83
|
+
}
|
|
53
84
|
if (verbose) {
|
|
54
85
|
console.log(blue(`[Vetra Switchboard]: Started successfully`));
|
|
86
|
+
if (remoteDrive) {
|
|
87
|
+
console.log(blue(`[Vetra Switchboard]: Syncing with remote drive: ${remoteDrive}`));
|
|
88
|
+
}
|
|
55
89
|
}
|
|
56
90
|
else {
|
|
57
91
|
console.log(`Switchboard initialized`);
|
|
58
92
|
console.log(` ➜ Drive URL: ${switchboard.defaultDriveUrl}`);
|
|
59
93
|
}
|
|
60
|
-
return {
|
|
94
|
+
return {
|
|
95
|
+
driveUrl: switchboard.defaultDriveUrl || "",
|
|
96
|
+
previewDriveUrl: previewDriveUrl,
|
|
97
|
+
};
|
|
61
98
|
}
|
|
62
99
|
catch (error) {
|
|
63
100
|
console.error(red(`[Vetra Switchboard]: ${error instanceof Error ? error.message : String(error)}`));
|
|
64
101
|
throw error instanceof Error ? error : new Error(String(error));
|
|
65
102
|
}
|
|
66
103
|
}
|
|
67
|
-
function
|
|
68
|
-
const { verbose = false, ...reactorOptions } = options || {};
|
|
69
|
-
const finalOptions = {
|
|
70
|
-
...reactorOptions,
|
|
71
|
-
remoteDrives: remoteDrives || "",
|
|
72
|
-
};
|
|
73
|
-
const child = fork(path.join(dirname(__dirname), "commands", "reactor.js"), ["spawn", JSON.stringify(finalOptions)], { silent: true });
|
|
74
|
-
return new Promise((resolve) => {
|
|
75
|
-
child.on("message", (message) => {
|
|
76
|
-
// eslint-disable-next-line @typescript-eslint/no-base-to-string
|
|
77
|
-
const text = message.toString();
|
|
78
|
-
if (text.startsWith("reactorUrl:")) {
|
|
79
|
-
const reactorUrl = text.substring("reactorUrl:".length);
|
|
80
|
-
resolve({ reactorUrl });
|
|
81
|
-
}
|
|
82
|
-
});
|
|
83
|
-
child.stdout.on("data", (data) => {
|
|
84
|
-
const message = data.toString();
|
|
85
|
-
const lines = message.split("\n").filter((line) => line.trim().length);
|
|
86
|
-
for (const line of lines) {
|
|
87
|
-
if (verbose) {
|
|
88
|
-
process.stdout.write(cyan(`[Reactor]: ${line}\n`));
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
// Only show specific logs when not verbose
|
|
92
|
-
if (line.includes("🔄") ||
|
|
93
|
-
line.includes("✅") ||
|
|
94
|
-
line.includes("❌")) {
|
|
95
|
-
process.stdout.write(cyan(`[Codegen]: ${line}\n`));
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
});
|
|
100
|
-
child.stderr.on("error", (data) => {
|
|
101
|
-
process.stderr.write(red(`[Reactor]: ${data.toString()}`));
|
|
102
|
-
});
|
|
103
|
-
child.on("error", (err) => {
|
|
104
|
-
process.stderr.write(red(`[Reactor]: ${err}`));
|
|
105
|
-
});
|
|
106
|
-
child.on("exit", (code) => {
|
|
107
|
-
if (verbose) {
|
|
108
|
-
console.log(`Reactor process exited with code ${code}`);
|
|
109
|
-
}
|
|
110
|
-
});
|
|
111
|
-
});
|
|
112
|
-
}
|
|
113
|
-
async function spawnConnect(options, localReactorUrl) {
|
|
114
|
-
const { verbose = false, connectPort, ...connectOptions } = options || {};
|
|
115
|
-
const finalOptions = connectPort
|
|
116
|
-
? { ...connectOptions, port: connectPort.toString() }
|
|
117
|
-
: connectOptions;
|
|
118
|
-
const child = fork(path.join(dirname(__dirname), "commands", "connect.js"), ["spawn", JSON.stringify(finalOptions)], {
|
|
119
|
-
silent: true,
|
|
120
|
-
env: {
|
|
121
|
-
...process.env,
|
|
122
|
-
PH_CONNECT_DEFAULT_DRIVES_URL: localReactorUrl,
|
|
123
|
-
},
|
|
124
|
-
});
|
|
125
|
-
return new Promise((resolve) => {
|
|
126
|
-
let connectInitialized = false;
|
|
127
|
-
child.stdout.on("data", (data) => {
|
|
128
|
-
const message = data.toString();
|
|
129
|
-
const lines = message.split("\n").filter((line) => line.trim().length);
|
|
130
|
-
if (!connectInitialized) {
|
|
131
|
-
resolve();
|
|
132
|
-
connectInitialized = true;
|
|
133
|
-
if (!verbose) {
|
|
134
|
-
console.log(green(`[Connect]: Connect initialized`));
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
for (const line of lines) {
|
|
138
|
-
if (verbose) {
|
|
139
|
-
process.stdout.write(green(`[Connect]: ${line}\n`));
|
|
140
|
-
}
|
|
141
|
-
else {
|
|
142
|
-
// Only show Local and Network URLs when not verbose
|
|
143
|
-
if (line.includes("➜ Local:") || line.includes("➜ Network:")) {
|
|
144
|
-
process.stdout.write(green(`[Connect]: ${line}\n`));
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
});
|
|
149
|
-
child.stderr.on("data", (data) => {
|
|
150
|
-
if (verbose) {
|
|
151
|
-
process.stderr.write(red(`[Connect]: ${data.toString()}`));
|
|
152
|
-
}
|
|
153
|
-
});
|
|
154
|
-
child.on("close", (code) => {
|
|
155
|
-
if (verbose) {
|
|
156
|
-
console.log(`Connect process exited with code ${code}`);
|
|
157
|
-
}
|
|
158
|
-
});
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
export async function startVetra({ generate, watch, switchboardPort = DefaultReactorOptions.port, reactorPort = DefaultReactorOptions.port + 1, connectPort, disableDefaultDrive = true, configFile, verbose = false, remoteDrive, }) {
|
|
104
|
+
export async function startVetra({ generate, switchboardPort, connectPort, configFile, verbose = false, remoteDrive, disableConnect = false, interactive = false, watch = false, }) {
|
|
162
105
|
try {
|
|
106
|
+
// Set default log level to info if not already specified
|
|
107
|
+
if (!process.env.LOG_LEVEL) {
|
|
108
|
+
setLogLevel("info");
|
|
109
|
+
}
|
|
163
110
|
const baseConfig = getConfig(configFile);
|
|
111
|
+
// Use config port if no CLI port provided, fallback to default
|
|
112
|
+
const resolvedSwitchboardPort = switchboardPort ??
|
|
113
|
+
baseConfig.reactor?.port ??
|
|
114
|
+
defaultSwitchboardOptions.port;
|
|
164
115
|
const https = baseConfig.reactor?.https;
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
driveUrl = remoteDrive;
|
|
169
|
-
if (verbose) {
|
|
170
|
-
console.log(`Using remote drive: ${remoteDrive}`);
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
else {
|
|
174
|
-
// Start Vetra Switchboard
|
|
175
|
-
if (verbose) {
|
|
176
|
-
console.log("Starting Vetra Switchboard...");
|
|
177
|
-
}
|
|
178
|
-
const switchboardResult = await spawnLocalVetraSwitchboard({
|
|
179
|
-
generate,
|
|
180
|
-
port: switchboardPort,
|
|
181
|
-
watch,
|
|
182
|
-
https,
|
|
183
|
-
configFile,
|
|
184
|
-
verbose,
|
|
185
|
-
});
|
|
186
|
-
driveUrl = switchboardResult.driveUrl;
|
|
187
|
-
}
|
|
116
|
+
// Use vetraUrl from config if no explicit remoteDrive is provided
|
|
117
|
+
const configVetraUrl = baseConfig.vetra?.driveUrl;
|
|
118
|
+
const resolvedVetraUrl = remoteDrive ?? configVetraUrl;
|
|
188
119
|
if (verbose) {
|
|
189
|
-
console.log("Starting
|
|
120
|
+
console.log("Starting Vetra Switchboard...");
|
|
121
|
+
if (resolvedVetraUrl) {
|
|
122
|
+
const source = remoteDrive
|
|
123
|
+
? "command line argument"
|
|
124
|
+
: "powerhouse.config.json";
|
|
125
|
+
console.log(`Using vetraUrl from ${source}: ${resolvedVetraUrl}`);
|
|
126
|
+
}
|
|
190
127
|
}
|
|
191
|
-
await
|
|
128
|
+
const switchboardResult = await startLocalVetraSwitchboard({
|
|
192
129
|
generate,
|
|
193
|
-
port:
|
|
194
|
-
|
|
130
|
+
port: resolvedSwitchboardPort,
|
|
131
|
+
dev: true, // Vetra always runs in dev mode to load local packages
|
|
195
132
|
https,
|
|
196
|
-
disableDefaultDrive,
|
|
197
133
|
configFile,
|
|
198
|
-
processors: ["ph/codegen/processor"],
|
|
199
134
|
verbose,
|
|
200
|
-
|
|
201
|
-
|
|
135
|
+
interactiveCodegen: interactive,
|
|
136
|
+
watch,
|
|
137
|
+
}, resolvedVetraUrl);
|
|
138
|
+
const driveUrl = switchboardResult.driveUrl || resolvedVetraUrl || "";
|
|
139
|
+
const previewDriveUrl = switchboardResult.previewDriveUrl;
|
|
140
|
+
// Configure GitHub URL if remote drive is set
|
|
141
|
+
if (resolvedVetraUrl) {
|
|
142
|
+
// give some time for the drive to process initial strands
|
|
143
|
+
await sleep(3000);
|
|
144
|
+
await configureVetraGithubUrl(resolvedSwitchboardPort, resolvedVetraUrl, verbose);
|
|
145
|
+
// give some time for the user to read log messages
|
|
146
|
+
await sleep(2000);
|
|
147
|
+
}
|
|
202
148
|
if (verbose) {
|
|
203
|
-
console.log("Starting
|
|
204
|
-
|
|
149
|
+
console.log("Starting Codegen Reactor...");
|
|
150
|
+
}
|
|
151
|
+
// Start Connect pointing to the drive (unless disabled)
|
|
152
|
+
if (!disableConnect) {
|
|
153
|
+
if (verbose) {
|
|
154
|
+
console.log("Starting Connect...");
|
|
155
|
+
const drives = previewDriveUrl
|
|
156
|
+
? `${driveUrl}, ${previewDriveUrl}`
|
|
157
|
+
: driveUrl;
|
|
158
|
+
console.log(` ➜ Connect will use drives: ${drives}`);
|
|
159
|
+
}
|
|
160
|
+
await startConnectStudio({
|
|
161
|
+
defaultDrivesUrl: previewDriveUrl
|
|
162
|
+
? [driveUrl, previewDriveUrl]
|
|
163
|
+
: [driveUrl],
|
|
164
|
+
drivesPreserveStrategy: "preserve-all",
|
|
165
|
+
disableLocalPackage: !watch,
|
|
166
|
+
devServerOptions: {
|
|
167
|
+
port: connectPort,
|
|
168
|
+
},
|
|
169
|
+
});
|
|
205
170
|
}
|
|
206
|
-
await spawnConnect(connectPort
|
|
207
|
-
? { configFile, verbose, connectPort }
|
|
208
|
-
: { configFile, verbose }, driveUrl);
|
|
209
171
|
}
|
|
210
172
|
catch (error) {
|
|
211
173
|
console.error(error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vetra.js","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"vetra.js","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sleep for a specified number of milliseconds
|
|
3
|
+
*/
|
|
4
|
+
export declare function sleep(ms: number): Promise<void>;
|
|
5
|
+
/**
|
|
6
|
+
* Configure GitHub URL for Vetra documents
|
|
7
|
+
* @param switchboardPort - Port where switchboard is running
|
|
8
|
+
* @param vetraDriveUrl - Remote drive URL
|
|
9
|
+
* @param verbose - Enable verbose logging
|
|
10
|
+
*/
|
|
11
|
+
export declare function configureVetraGithubUrl(switchboardPort: number, vetraDriveUrl: string, verbose?: boolean): Promise<void>;
|
|
12
|
+
//# sourceMappingURL=configure-vetra-github-url.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"configure-vetra-github-url.d.ts","sourceRoot":"","sources":["../../../src/utils/configure-vetra-github-url.ts"],"names":[],"mappings":"AAqNA;;GAEG;AACH,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/C;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,OAAO,CAAC,EAAE,OAAO,GAChB,OAAO,CAAC,IAAI,CAAC,CAiEf"}
|