@powerhousedao/ph-cli 4.1.0-dev.16 → 4.1.0-dev.18

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@powerhousedao/ph-cli",
3
- "version": "4.1.0-dev.16",
3
+ "version": "4.1.0-dev.18",
4
4
  "description": "",
5
5
  "license": "AGPL-3.0-only",
6
6
  "type": "module",
@@ -1 +1 @@
1
- {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../../src/commands/connect.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AASrD,eAAO,MAAM,OAAO,EAAE,iBAAiB,CACrC;IAAC,cAAc;CAAC,EAChB,OAAO,CAAC,IAAI,CAAC,CAGd,CAAC;AA6CF,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,QAY9C"}
1
+ {"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../../src/commands/connect.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AASrD,eAAO,MAAM,OAAO,EAAE,iBAAiB,CACrC;IAAC,cAAc;CAAC,EAChB,OAAO,CAAC,IAAI,CAAC,CAGd,CAAC;AA6CF,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,QAO9C"}
@@ -47,13 +47,9 @@ export function connectCommand(program) {
47
47
  const cmd = program
48
48
  .command("connect")
49
49
  .description("Powerhouse Connect commands")
50
- .addCommand(studioCommand)
50
+ .addCommand(studioCommand, { isDefault: true })
51
51
  .addCommand(buildCommand)
52
52
  .addCommand(previewCommand);
53
- // Set studio as the default command
54
- cmd.action(async (...args) => {
55
- await connect(...args);
56
- });
57
53
  }
58
54
  if (process.argv.at(2) === "spawn") {
59
55
  const optionsArg = process.argv.at(3);
@@ -1 +1 @@
1
- {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../src/commands/connect.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connect.js","sourceRoot":"","sources":["../../../src/commands/connect.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"switchboard.d.ts","sourceRoot":"","sources":["../../../src/commands/switchboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAwBrD,eAAO,MAAM,WAAW,EAAE,iBAAiB,CACzC;IAAC,cAAc;CAAC,EAChB,OAAO,CAAC,kBAAkB,CAAC,CAG5B,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,QA6BlD"}
1
+ {"version":3,"file":"switchboard.d.ts","sourceRoot":"","sources":["../../../src/commands/switchboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AA+BrD,eAAO,MAAM,WAAW,EAAE,iBAAiB,CACzC;IAAC,cAAc;CAAC,EAChB,OAAO,CAAC,kBAAkB,CAAC,CAG5B,CAAC;AAEF,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,QA6BlD"}
@@ -8,9 +8,15 @@ async function startLocalSwitchboard(options) {
8
8
  }
9
9
  const Switchboard = await import("../services/switchboard.js");
10
10
  const { startSwitchboard } = Switchboard;
11
+ // Extract only the props that switchboard expects
12
+ const { port: rawPort, configFile, dev, dbPath, packages } = options;
13
+ const port = typeof rawPort === "string" ? parseInt(rawPort) : rawPort;
11
14
  return startSwitchboard({
12
- ...options,
13
- port: typeof options.port === "string" ? parseInt(options.port) : options.port,
15
+ port,
16
+ configFile,
17
+ dev,
18
+ dbPath,
19
+ packages,
14
20
  });
15
21
  }
16
22
  export const switchboard = async (options) => {
@@ -1 +1 @@
1
- {"version":3,"file":"switchboard.js","sourceRoot":"","sources":["../../../src/commands/switchboard.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAG7C,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAM5C,KAAK,UAAU,qBAAqB,CAAC,OAA2B;IAC9D,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;IAC7C,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,OAAO,CAAC,GAAG,CAAC,wBAAwB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;QACxD,OAAO,CAAC,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC3C,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,4BAA4B,CAAC,CAAC;IAC/D,MAAM,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAC;IAEzC,OAAO,gBAAgB,CAAC;QACtB,GAAG,OAAO;QACV,IAAI,EACF,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI;KAC3E,CAAC,CAAC;AACL,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAGpB,KAAK,EAAE,OAAO,EAAE,EAAE;IACpB,OAAO,MAAM,qBAAqB,CAAC,OAAO,CAAC,CAAC;AAC9C,CAAC,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,MAAM,OAAO,GAAG,OAAO;SACpB,OAAO,CAAC,aAAa,CAAC;SACtB,WAAW,CAAC,0BAA0B,CAAC;SACvC,MAAM,CAAC,eAAe,EAAE,sBAAsB,EAAE,MAAM,CAAC;SACvD,MAAM,CACL,4BAA4B,EAC5B,uCAAuC,EACvC,0BAA0B,CAC3B;SACA,MAAM,CAAC,YAAY,EAAE,8CAA8C,CAAC;SACpE,MAAM,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;SACrD,MAAM,CAAC,mCAAmC,EAAE,0BAA0B,CAAC;SACvE,MAAM,CAAC,qCAAqC,EAAE,2BAA2B,CAAC;SAC1E,MAAM,CACL,0BAA0B,EAC1B,oFAAoF,CACrF;SACA,MAAM,CACL,wBAAwB,EACxB,2EAA2E,CAC5E;SACA,MAAM,CAAC,OAAO,EAAE,yCAAyC,CAAC;SAC1D,MAAM,CAAC,KAAK,EAAE,GAAG,IAAsB,EAAE,EAAE;QAC1C,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,CAAC,oBAAoB,EAAE,eAAe,CAAC,CAAC;IACrD,CAAC,CAAC,CAAC;IAEL,aAAa,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;AAC1C,CAAC;AAED,IAAI,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE,CAAC;IACnC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,UAAU,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,UAAU,CAAoB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7E,qBAAqB,CAAC,OAAO,CAAC;SAC3B,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAChB,OAAO,CAAC,IAAI,EAAE,CAAC,YAAY,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IACxD,CAAC,CAAC;SACD,KAAK,CAAC,CAAC,CAAU,EAAE,EAAE;QACpB,MAAM,CAAC,CAAC;IACV,CAAC,CAAC,CAAC;AACP,CAAC"}
1
+ {"version":3,"file":"switchboard.js","sourceRoot":"","sources":["../../../src/commands/switchboard.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"vetra.d.ts","sourceRoot":"","sources":["../../../src/commands/vetra.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AASrD,eAAO,MAAM,KAAK,EAAE,iBAAiB,CACnC;IAAC,UAAU,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE;CAAC,CAGlC,CAAC;AAEF,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,QAwC5C"}
1
+ {"version":3,"file":"vetra.d.ts","sourceRoot":"","sources":["../../../src/commands/vetra.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,aAAa,CAAC;AASrD,eAAO,MAAM,KAAK,EAAE,iBAAiB,CACnC;IAAC,UAAU,GAAG;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE;CAAC,CAOlC,CAAC;AAEF,wBAAgB,YAAY,CAAC,OAAO,EAAE,OAAO,QAmC5C"}
@@ -6,23 +6,25 @@ async function startVetraEnv(options) {
6
6
  return startVetra(options);
7
7
  }
8
8
  export const vetra = async (options) => {
9
- return startVetraEnv({ ...options, verbose: options.logs });
9
+ return startVetraEnv({
10
+ ...options,
11
+ verbose: options.logs,
12
+ disableConnect: options.disableConnect,
13
+ });
10
14
  };
11
15
  export function vetraCommand(program) {
12
16
  const cmd = program
13
17
  .command("vetra")
14
18
  .option("--logs", "Show additional logs")
15
19
  .description("Starts Vetra development environment with switchboard, reactor, and connect")
16
- .option("--generate", "generate code when document model is updated")
17
20
  .option("--switchboard-port <port>", "port to use for the Vetra switchboard (default: 4001)")
18
- .option("--reactor-port <port>", "port to use for the local reactor (default: 4002)")
19
21
  .option("--connect-port <port>", "port to use for Connect (default: 3000)")
20
- .option("--disable-default-drive", "disable automatic creation of the default 'powerhouse' drive in the reactor")
21
22
  .option("--https-key-file <HTTPS_KEY_FILE>", "path to the ssl key file")
22
23
  .option("--https-cert-file <HTTPS_CERT_FILE>", "path to the ssl cert file")
23
24
  .option("--config-file <configFile>", "Path to the powerhouse.config.js file")
24
25
  .option("-w, --watch", "if the switchboard and reactor should watch for local changes to document models and processors")
25
- .option("--remote-drive <url>", "URL of remote drive to connect to (skips switchboard initialization)");
26
+ .option("--remote-drive <url>", "URL of remote drive to connect to (skips switchboard initialization)")
27
+ .option("--disable-connect", "Skip Connect initialization (only start switchboard and reactor)");
26
28
  // Use the setCustomHelp utility to apply custom help formatting
27
29
  setCustomHelp(cmd, vetraHelp);
28
30
  cmd.action(vetra);
@@ -1 +1 @@
1
- {"version":3,"file":"vetra.js","sourceRoot":"","sources":["../../../src/commands/vetra.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,KAAK,UAAU,aAAa,CAAC,OAAmB;IAC9C,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IACnD,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAC7B,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAEd,KAAK,EAAE,OAAO,EAAE,EAAE;IACpB,OAAO,aAAa,CAAC,EAAE,GAAG,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,OAAgB;IAC3C,MAAM,GAAG,GAAG,OAAO;SAChB,OAAO,CAAC,OAAO,CAAC;SAChB,MAAM,CAAC,QAAQ,EAAE,sBAAsB,CAAC;SACxC,WAAW,CACV,6EAA6E,CAC9E;SACA,MAAM,CAAC,YAAY,EAAE,8CAA8C,CAAC;SACpE,MAAM,CACL,2BAA2B,EAC3B,uDAAuD,CACxD;SACA,MAAM,CACL,uBAAuB,EACvB,mDAAmD,CACpD;SACA,MAAM,CAAC,uBAAuB,EAAE,yCAAyC,CAAC;SAC1E,MAAM,CACL,yBAAyB,EACzB,6EAA6E,CAC9E;SACA,MAAM,CAAC,mCAAmC,EAAE,0BAA0B,CAAC;SACvE,MAAM,CAAC,qCAAqC,EAAE,2BAA2B,CAAC;SAC1E,MAAM,CACL,4BAA4B,EAC5B,uCAAuC,CACxC;SACA,MAAM,CACL,aAAa,EACb,iGAAiG,CAClG;SACA,MAAM,CACL,sBAAsB,EACtB,sEAAsE,CACvE,CAAC;IAEJ,gEAAgE;IAChE,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAE9B,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpB,CAAC"}
1
+ {"version":3,"file":"vetra.js","sourceRoot":"","sources":["../../../src/commands/vetra.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAGvC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,KAAK,UAAU,aAAa,CAAC,OAAmB;IAC9C,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;IACnD,MAAM,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC;IAC7B,OAAO,UAAU,CAAC,OAAO,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAEd,KAAK,EAAE,OAAO,EAAE,EAAE;IACpB,OAAO,aAAa,CAAC;QACnB,GAAG,OAAO;QACV,OAAO,EAAE,OAAO,CAAC,IAAI;QACrB,cAAc,EAAE,OAAO,CAAC,cAAc;KACvC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,UAAU,YAAY,CAAC,OAAgB;IAC3C,MAAM,GAAG,GAAG,OAAO;SAChB,OAAO,CAAC,OAAO,CAAC;SAChB,MAAM,CAAC,QAAQ,EAAE,sBAAsB,CAAC;SACxC,WAAW,CACV,6EAA6E,CAC9E;SACA,MAAM,CACL,2BAA2B,EAC3B,uDAAuD,CACxD;SACA,MAAM,CAAC,uBAAuB,EAAE,yCAAyC,CAAC;SAC1E,MAAM,CAAC,mCAAmC,EAAE,0BAA0B,CAAC;SACvE,MAAM,CAAC,qCAAqC,EAAE,2BAA2B,CAAC;SAC1E,MAAM,CACL,4BAA4B,EAC5B,uCAAuC,CACxC;SACA,MAAM,CACL,aAAa,EACb,iGAAiG,CAClG;SACA,MAAM,CACL,sBAAsB,EACtB,sEAAsE,CACvE;SACA,MAAM,CACL,mBAAmB,EACnB,kEAAkE,CACnE,CAAC;IAEJ,gEAAgE;IAChE,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAE9B,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AACpB,CAAC"}
@@ -33,7 +33,7 @@ export declare const devHelp = "\nCommand Overview:\n The dev command sets up a
33
33
  /**
34
34
  * Help text for the vetra command
35
35
  */
36
- export declare const vetraHelp = "\nCommand Overview:\n The vetra command sets up a complete Vetra development environment for working with Vetra projects.\n It starts three coordinated services: a Vetra Switchboard, a Local Reactor, and Connect Studio,\n enabling full document collaboration and real-time processing with a \"Vetra\" drive.\n\n This command:\n 1. Starts a Vetra Switchboard with a \"Vetra\" drive for document storage\n 2. Starts a Local Reactor that connects to the Vetra Switchboard as a remote drive\n 3. Starts Connect Studio pointing to the Local Reactor for user interaction\n 4. Enables real-time updates, collaboration, and code generation across all services\n\nOptions:\n --generate Generate code automatically when document models are updated.\n This keeps your code in sync with model changes across all services.\n \n --switchboard-port <port> Specify the port to use for the Vetra Switchboard service.\n Default is 4001. The Switchboard handles document storage.\n \n --reactor-port <port> Specify the port to use for the Local Reactor service.\n Default is 4002. The Reactor provides the main API and connects to switchboard.\n \n --https-key-file <path> Path to the SSL key file if using HTTPS for secure connections.\n \n --https-cert-file <path> Path to the SSL certificate file if using HTTPS.\n \n --config-file <path> Path to the powerhouse.config.js file. This allows you to\n customize the behavior of all services in the Vetra development environment.\n \n -w, --watch Watch for local changes to document models and processors,\n and automatically update both the Switchboard and Reactor accordingly.\n \n --remote-drive <url> URL of remote drive to connect to (skips switchboard initialization).\n \n --logs Enable verbose logging for all services. This provides detailed\n output from Switchboard, Reactor, and Connect during startup and operation.\n\nExamples:\n $ ph vetra # Start complete Vetra environment with defaults\n $ ph vetra --generate # Auto-generate code on model changes\n $ ph vetra --switchboard-port 5000 --reactor-port 5001 # Use custom ports\n $ ph vetra --config-file custom.powerhouse.config.js # Use custom configuration\n $ ph vetra --watch # Watch for changes and auto-update\n $ ph vetra --logs # Enable detailed logging from all services\n $ ph vetra --https-key-file key.pem --https-cert-file cert.pem # Use HTTPS\n";
36
+ export declare const vetraHelp = "\nCommand Overview:\n The vetra command sets up a Vetra development environment for working with Vetra projects.\n It starts a Vetra Switchboard and optionally Connect Studio, enabling document collaboration \n and real-time processing with a \"Vetra\" drive or connection to remote drives.\n\n This command:\n 1. Starts a Vetra Switchboard with a \"Vetra\" drive for document storage\n 2. Optionally connects to remote drives instead of creating a local drive\n 3. Starts Connect Studio pointing to the Switchboard for user interaction (unless disabled)\n 4. Enables real-time updates, collaboration, and code generation\n\nOptions:\n --logs Enable verbose logging for all services. This provides detailed\n output from Switchboard and Connect during startup and operation.\n \n --switchboard-port <port> Specify the port to use for the Vetra Switchboard service.\n Default is 4001. The Switchboard handles document storage.\n \n --connect-port <port> Specify the port to use for Connect Studio.\n Default is 3000. Connect provides the user interface.\n \n --https-key-file <path> Path to the SSL key file if using HTTPS for secure connections.\n \n --https-cert-file <path> Path to the SSL certificate file if using HTTPS.\n \n --config-file <path> Path to the powerhouse.config.js file. This allows you to\n customize the behavior of the Vetra development environment.\n \n -w, --watch Watch for local changes to document models and processors,\n and automatically update the Switchboard accordingly.\n \n --remote-drive <url> URL of remote drive to connect to. When specified, the switchboard\n connects to this remote drive instead of creating a local Vetra drive.\n \n --disable-connect Skip Connect initialization (only start switchboard and reactor).\n Use this when you only need the backend services running.\n\nExamples:\n $ ph vetra # Start Vetra environment with defaults\n $ ph vetra --switchboard-port 5000 --connect-port 3001 # Use custom ports\n $ ph vetra --config-file custom.powerhouse.config.js # Use custom configuration\n $ ph vetra --watch # Watch for changes and auto-update\n $ ph vetra --logs # Enable detailed logging\n $ ph vetra --remote-drive http://localhost:4001/d/docs # Connect to remote drive\n $ ph vetra --disable-connect # Start only backend services\n $ ph vetra --https-key-file key.pem --https-cert-file cert.pem # Use HTTPS\n";
37
37
  /**
38
38
  * Help text for the inspect command
39
39
  */
@@ -1 +1 @@
1
- {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/help.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,eAAO,MAAM,iBAAiB,itDAkC7B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,yrBAW5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,gcAU9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,o9GA+DxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,+jEAsCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,4pEAwCzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,ypCA2BpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,m7DAoCnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,q2FA6CrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,miDAkCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,+zDAqCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,ixDAoC3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,s6DAuCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,2kCA0BvB,CAAC"}
1
+ {"version":3,"file":"help.d.ts","sourceRoot":"","sources":["../../src/help.ts"],"names":[],"mappings":"AAMA;;GAEG;AACH,eAAO,MAAM,iBAAiB,itDAkC7B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,gBAAgB,yrBAW5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,kBAAkB,gcAU9B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,o9GA+DxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,+jEAsCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa,4pEAwCzB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,QAAQ,ypCA2BpB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,OAAO,m7DAoCnB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,SAAS,66FA+CrB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,miDAkCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,+zDAqCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,ixDAoC3B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,s6DAuCvB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,WAAW,2kCA0BvB,CAAC"}
package/dist/src/help.js CHANGED
@@ -295,48 +295,50 @@ Examples:
295
295
  */
296
296
  export const vetraHelp = `
297
297
  Command Overview:
298
- The vetra command sets up a complete Vetra development environment for working with Vetra projects.
299
- It starts three coordinated services: a Vetra Switchboard, a Local Reactor, and Connect Studio,
300
- enabling full document collaboration and real-time processing with a "Vetra" drive.
298
+ The vetra command sets up a Vetra development environment for working with Vetra projects.
299
+ It starts a Vetra Switchboard and optionally Connect Studio, enabling document collaboration
300
+ and real-time processing with a "Vetra" drive or connection to remote drives.
301
301
 
302
302
  This command:
303
303
  1. Starts a Vetra Switchboard with a "Vetra" drive for document storage
304
- 2. Starts a Local Reactor that connects to the Vetra Switchboard as a remote drive
305
- 3. Starts Connect Studio pointing to the Local Reactor for user interaction
306
- 4. Enables real-time updates, collaboration, and code generation across all services
304
+ 2. Optionally connects to remote drives instead of creating a local drive
305
+ 3. Starts Connect Studio pointing to the Switchboard for user interaction (unless disabled)
306
+ 4. Enables real-time updates, collaboration, and code generation
307
307
 
308
308
  Options:
309
- --generate Generate code automatically when document models are updated.
310
- This keeps your code in sync with model changes across all services.
309
+ --logs Enable verbose logging for all services. This provides detailed
310
+ output from Switchboard and Connect during startup and operation.
311
311
 
312
- --switchboard-port <port> Specify the port to use for the Vetra Switchboard service.
313
- Default is 4001. The Switchboard handles document storage.
312
+ --switchboard-port <port> Specify the port to use for the Vetra Switchboard service.
313
+ Default is 4001. The Switchboard handles document storage.
314
314
 
315
- --reactor-port <port> Specify the port to use for the Local Reactor service.
316
- Default is 4002. The Reactor provides the main API and connects to switchboard.
315
+ --connect-port <port> Specify the port to use for Connect Studio.
316
+ Default is 3000. Connect provides the user interface.
317
317
 
318
- --https-key-file <path> Path to the SSL key file if using HTTPS for secure connections.
318
+ --https-key-file <path> Path to the SSL key file if using HTTPS for secure connections.
319
319
 
320
- --https-cert-file <path> Path to the SSL certificate file if using HTTPS.
320
+ --https-cert-file <path> Path to the SSL certificate file if using HTTPS.
321
321
 
322
- --config-file <path> Path to the powerhouse.config.js file. This allows you to
323
- customize the behavior of all services in the Vetra development environment.
322
+ --config-file <path> Path to the powerhouse.config.js file. This allows you to
323
+ customize the behavior of the Vetra development environment.
324
324
 
325
- -w, --watch Watch for local changes to document models and processors,
326
- and automatically update both the Switchboard and Reactor accordingly.
325
+ -w, --watch Watch for local changes to document models and processors,
326
+ and automatically update the Switchboard accordingly.
327
327
 
328
- --remote-drive <url> URL of remote drive to connect to (skips switchboard initialization).
328
+ --remote-drive <url> URL of remote drive to connect to. When specified, the switchboard
329
+ connects to this remote drive instead of creating a local Vetra drive.
329
330
 
330
- --logs Enable verbose logging for all services. This provides detailed
331
- output from Switchboard, Reactor, and Connect during startup and operation.
331
+ --disable-connect Skip Connect initialization (only start switchboard and reactor).
332
+ Use this when you only need the backend services running.
332
333
 
333
334
  Examples:
334
- $ ph vetra # Start complete Vetra environment with defaults
335
- $ ph vetra --generate # Auto-generate code on model changes
336
- $ ph vetra --switchboard-port 5000 --reactor-port 5001 # Use custom ports
337
- $ ph vetra --config-file custom.powerhouse.config.js # Use custom configuration
338
- $ ph vetra --watch # Watch for changes and auto-update
339
- $ ph vetra --logs # Enable detailed logging from all services
335
+ $ ph vetra # Start Vetra environment with defaults
336
+ $ ph vetra --switchboard-port 5000 --connect-port 3001 # Use custom ports
337
+ $ ph vetra --config-file custom.powerhouse.config.js # Use custom configuration
338
+ $ ph vetra --watch # Watch for changes and auto-update
339
+ $ ph vetra --logs # Enable detailed logging
340
+ $ ph vetra --remote-drive http://localhost:4001/d/docs # Connect to remote drive
341
+ $ ph vetra --disable-connect # Start only backend services
340
342
  $ ph vetra --https-key-file key.pem --https-cert-file cert.pem # Use HTTPS
341
343
  `;
342
344
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/help.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,mCAAmC,EACnC,wBAAwB,GACzB,MAAM,4CAA4C,CAAC;AAEpD;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkChC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;2EAO2C,uBAAuB;6FACL,mCAAmC;uEACzD,wBAAwB;;CAE9F,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;;;;;;;;CAUjC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+D3B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwC5B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BvB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCtB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6CxB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoC9B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B1B,CAAC"}
1
+ {"version":3,"file":"help.js","sourceRoot":"","sources":["../../src/help.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,uBAAuB,EACvB,mCAAmC,EACnC,wBAAwB,GACzB,MAAM,4CAA4C,CAAC;AAEpD;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkChC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG;;;;;;;2EAO2C,uBAAuB;6FACL,mCAAmC;uEACzD,wBAAwB;;CAE9F,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG;;;;;;;;;;CAUjC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+D3B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwC5B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BvB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCtB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+CxB,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoC9B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuC1B,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;CA0B1B,CAAC"}
@@ -1,3 +1,8 @@
1
1
  import { type StartServerOptions } from "@powerhousedao/switchboard/server";
2
- export declare function startSwitchboard(options: StartServerOptions): Promise<import("@powerhousedao/switchboard/server").SwitchboardReactor>;
2
+ type SwitchboardOptions = StartServerOptions & {
3
+ remoteDrives?: string[];
4
+ useVetraDrive?: boolean;
5
+ };
6
+ export declare function startSwitchboard(options: SwitchboardOptions): Promise<import("@powerhousedao/switchboard/server").SwitchboardReactor>;
7
+ export {};
3
8
  //# sourceMappingURL=switchboard.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"switchboard.d.ts","sourceRoot":"","sources":["../../../src/services/switchboard.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,mCAAmC,CAAC;AAsB3C,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,2EAYjE"}
1
+ {"version":3,"file":"switchboard.d.ts","sourceRoot":"","sources":["../../../src/services/switchboard.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,kBAAkB,EAExB,MAAM,mCAAmC,CAAC;AA0C3C,KAAK,kBAAkB,GAAG,kBAAkB,GAAG;IAC7C,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAEF,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,2EAkCjE"}
@@ -19,14 +19,49 @@ const defaultSwitchboardOptions = {
19
19
  },
20
20
  },
21
21
  };
22
+ const defaultVetraSwitchboardOptions = {
23
+ port: 4001,
24
+ dbPath: path.join(process.cwd(), ".ph/read-model.db"),
25
+ drive: {
26
+ id: "vetra",
27
+ slug: "vetra",
28
+ global: {
29
+ name: "Vetra",
30
+ icon: "https://azure-elderly-tortoise-212.mypinata.cloud/ipfs/bafkreiccw6piv55gk6pkbfzlhj2snfsncjz5fmmlue5njsukuaeapffggi",
31
+ },
32
+ preferredEditor: "vetra-drive-app",
33
+ local: {
34
+ availableOffline: true,
35
+ listeners: [],
36
+ sharingType: "public",
37
+ triggers: [],
38
+ },
39
+ },
40
+ };
22
41
  export async function startSwitchboard(options) {
23
42
  const baseConfig = getConfig(options.configFile);
24
43
  const { https } = baseConfig.reactor ?? { https: false };
25
- const reactor = await startSwitchboardServer({
26
- ...defaultSwitchboardOptions,
27
- ...options,
28
- https,
29
- });
44
+ const { remoteDrives = [], useVetraDrive = false, ...serverOptions } = options;
45
+ // Choose the appropriate default configuration
46
+ const defaultOptions = useVetraDrive
47
+ ? defaultVetraSwitchboardOptions
48
+ : defaultSwitchboardOptions;
49
+ // Only include the default drive if no remote drives are provided
50
+ const finalOptions = remoteDrives.length > 0
51
+ ? {
52
+ ...defaultOptions,
53
+ drive: undefined, // Don't create default drive when syncing with remote
54
+ ...serverOptions,
55
+ https,
56
+ remoteDrives,
57
+ }
58
+ : {
59
+ ...defaultOptions,
60
+ ...serverOptions,
61
+ https,
62
+ remoteDrives,
63
+ };
64
+ const reactor = await startSwitchboardServer(finalOptions);
30
65
  return reactor;
31
66
  }
32
67
  //# 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,6BAA6B,CAAC;AACxD,OAAO,EAEL,gBAAgB,IAAI,sBAAsB,GAC3C,MAAM,mCAAmC,CAAC;AAC3C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,yBAAyB,GAAgC;IAC7D,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;CACF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,OAA2B;IAChE,MAAM,UAAU,GAAG,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IAEjD,MAAM,EAAE,KAAK,EAAE,GAAG,UAAU,CAAC,OAAO,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IAEzD,MAAM,OAAO,GAAG,MAAM,sBAAsB,CAAC;QAC3C,GAAG,yBAAyB;QAC5B,GAAG,OAAO;QACV,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,OAAO,CAAC;AACjB,CAAC"}
1
+ {"version":3,"file":"switchboard.js","sourceRoot":"","sources":["../../../src/services/switchboard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAEL,gBAAgB,IAAI,sBAAsB,GAC3C,MAAM,mCAAmC,CAAC;AAC3C,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,MAAM,yBAAyB,GAAgC;IAC7D,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;CACF,CAAC;AAEF,MAAM,8BAA8B,GAAgC;IAClE,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,mBAAmB,CAAC;IACrD,KAAK,EAAE;QACL,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,OAAO;QACb,MAAM,EAAE;YACN,IAAI,EAAE,OAAO;YACb,IAAI,EAAE,oHAAoH;SAC3H;QACD,eAAe,EAAE,iBAAiB;QAClC,KAAK,EAAE;YACL,gBAAgB,EAAE,IAAI;YACtB,SAAS,EAAE,EAAE;YACb,WAAW,EAAE,QAAQ;YACrB,QAAQ,EAAE,EAAE;SACb;KACF;CACF,CAAC;AAOF,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,GAAG,aAAa,EACjB,GAAG,OAAO,CAAC;IAEZ,+CAA+C;IAC/C,MAAM,cAAc,GAAG,aAAa;QAClC,CAAC,CAAC,8BAA8B;QAChC,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,14 @@
1
- import { type StartServerOptions as SwitchboardStartServerOptions } from "@powerhousedao/switchboard/server";
2
1
  export type DevOptions = {
3
2
  generate?: boolean;
4
3
  watch?: boolean;
5
4
  switchboardPort?: number;
6
- reactorPort?: number;
7
5
  connectPort?: number;
8
- disableDefaultDrive?: boolean;
9
6
  configFile?: string;
10
7
  httpsKeyFile?: string;
11
8
  httpsCertFile?: string;
12
9
  verbose?: boolean;
13
10
  remoteDrive?: string;
11
+ disableConnect?: boolean;
14
12
  };
15
- export declare function startVetraSwitchboard(options: SwitchboardStartServerOptions): Promise<import("@powerhousedao/switchboard/server").SwitchboardReactor>;
16
- export declare function startVetra({ generate, watch, switchboardPort, reactorPort, connectPort, disableDefaultDrive, configFile, verbose, remoteDrive, }: DevOptions): Promise<void>;
13
+ export declare function startVetra({ generate, watch, switchboardPort, connectPort, configFile, verbose, remoteDrive, disableConnect, }: DevOptions): Promise<void>;
17
14
  //# sourceMappingURL=vetra.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vetra.d.ts","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,kBAAkB,IAAI,6BAA6B,EACzD,MAAM,mCAAmC,CAAC;AAU3C,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,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;CACtB,CAAC;AAuBF,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,6BAA6B,2EAcvC;AAyKD,wBAAsB,UAAU,CAAC,EAC/B,QAAQ,EACR,KAAK,EACL,eAA4C,EAC5C,WAA4C,EAC5C,WAAW,EACX,mBAA0B,EAC1B,UAAU,EACV,OAAe,EACf,WAAW,GACZ,EAAE,UAAU,iBA4DZ"}
1
+ {"version":3,"file":"vetra.d.ts","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"AAYA,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,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;CAC1B,CAAC;AAoIF,wBAAsB,UAAU,CAAC,EAC/B,QAAQ,EACR,KAAK,EACL,eAA4C,EAC5C,WAAW,EACX,UAAU,EACV,OAAe,EACf,WAAW,EACX,cAAsB,GACvB,EAAE,UAAU,iBA+CZ"}
@@ -1,59 +1,42 @@
1
1
  import { getConfig } from "@powerhousedao/config/utils";
2
- import { startSwitchboard as startSwitchboardServer, } from "@powerhousedao/switchboard/server";
3
- import { blue, cyan, green, red } from "colorette";
2
+ import { blue, green, red } from "colorette";
3
+ import { setLogLevel } from "document-drive/utils/logger";
4
4
  import { fork } from "node:child_process";
5
5
  import path, { dirname } from "node:path";
6
6
  import { fileURLToPath } from "node:url";
7
7
  import { DefaultReactorOptions } from "./reactor.js";
8
8
  const __dirname = import.meta.dirname || dirname(fileURLToPath(import.meta.url));
9
- const defaultVetraSwitchboardOptions = {
10
- port: 4001,
11
- dbPath: path.join(process.cwd(), ".ph/read-model.db"),
12
- dev: true,
13
- drive: {
14
- id: "vetra",
15
- slug: "vetra",
16
- global: {
17
- name: "Vetra",
18
- icon: "https://azure-elderly-tortoise-212.mypinata.cloud/ipfs/bafkreiccw6piv55gk6pkbfzlhj2snfsncjz5fmmlue5njsukuaeapffggi",
19
- },
20
- preferredEditor: "vetra-drive-app",
21
- local: {
22
- availableOffline: true,
23
- listeners: [],
24
- sharingType: "public",
25
- triggers: [],
26
- },
27
- },
28
- };
29
- export async function startVetraSwitchboard(options) {
30
- const baseConfig = getConfig(options.configFile);
9
+ async function startLocalVetraSwitchboard(options, remoteDrive) {
10
+ const baseConfig = getConfig(options?.configFile);
31
11
  const { https } = baseConfig.reactor ?? { https: false };
32
- const switchboard = await startSwitchboardServer({
33
- ...defaultVetraSwitchboardOptions,
34
- ...options,
35
- https,
36
- mcp: true,
37
- });
38
- return switchboard;
39
- }
40
- async function spawnLocalVetraSwitchboard(options) {
41
- // Instead of spawning, let's start the switchboard directly
42
- // and simulate the spawn interface
43
12
  try {
44
- const { port: rawPort, configFile, verbose = false, ...restOptions } = options || {};
13
+ const { port: rawPort, configFile, verbose = false, dev, dbPath, packages, } = options || {};
45
14
  const port = typeof rawPort === "string"
46
15
  ? parseInt(rawPort)
47
16
  : typeof rawPort === "number"
48
17
  ? rawPort
49
18
  : 4001;
50
- const switchboard = await startVetraSwitchboard({
19
+ // Convert single remote drive to array if provided
20
+ const remoteDrives = remoteDrive ? [remoteDrive] : undefined;
21
+ // Use the same switchboard service as the standalone command
22
+ const Switchboard = await import("./switchboard.js");
23
+ const { startSwitchboard } = Switchboard;
24
+ const switchboard = await startSwitchboard({
51
25
  port,
52
26
  configFile: configFile || undefined,
53
- ...restOptions,
27
+ dev,
28
+ dbPath,
29
+ packages,
30
+ remoteDrives,
31
+ useVetraDrive: true, // Use Vetra drive instead of Powerhouse drive
32
+ https,
33
+ mcp: true,
54
34
  });
55
35
  if (verbose) {
56
36
  console.log(blue(`[Vetra Switchboard]: Started successfully`));
37
+ if (remoteDrive) {
38
+ console.log(blue(`[Vetra Switchboard]: Syncing with remote drive: ${remoteDrive}`));
39
+ }
57
40
  }
58
41
  else {
59
42
  console.log(`Switchboard initialized`);
@@ -66,53 +49,6 @@ async function spawnLocalVetraSwitchboard(options) {
66
49
  throw error instanceof Error ? error : new Error(String(error));
67
50
  }
68
51
  }
69
- function spawnLocalReactor(options, remoteDrives) {
70
- const { verbose = false, ...reactorOptions } = options || {};
71
- const finalOptions = {
72
- ...reactorOptions,
73
- remoteDrives: remoteDrives || "",
74
- mcp: false,
75
- };
76
- const child = fork(path.join(dirname(__dirname), "commands", "reactor.js"), ["spawn", JSON.stringify(finalOptions)], { silent: true });
77
- return new Promise((resolve) => {
78
- child.on("message", (message) => {
79
- // eslint-disable-next-line @typescript-eslint/no-base-to-string
80
- const text = message.toString();
81
- if (text.startsWith("reactorUrl:")) {
82
- const reactorUrl = text.substring("reactorUrl:".length);
83
- resolve({ reactorUrl });
84
- }
85
- });
86
- child.stdout.on("data", (data) => {
87
- const message = data.toString();
88
- const lines = message.split("\n").filter((line) => line.trim().length);
89
- for (const line of lines) {
90
- if (verbose) {
91
- process.stdout.write(cyan(`[Reactor]: ${line}\n`));
92
- }
93
- else {
94
- // Only show specific logs when not verbose
95
- if (line.includes("🔄") ||
96
- line.includes("✅") ||
97
- line.includes("❌")) {
98
- process.stdout.write(cyan(`[Codegen]: ${line}\n`));
99
- }
100
- }
101
- }
102
- });
103
- child.stderr.on("error", (data) => {
104
- process.stderr.write(red(`[Reactor]: ${data.toString()}`));
105
- });
106
- child.on("error", (err) => {
107
- process.stderr.write(red(`[Reactor]: ${err}`));
108
- });
109
- child.on("exit", (code) => {
110
- if (verbose) {
111
- console.log(`Reactor process exited with code ${code}`);
112
- }
113
- });
114
- });
115
- }
116
52
  async function spawnConnect(options, localReactorUrl) {
117
53
  const { verbose = false, connectPort, ...connectOptions } = options || {};
118
54
  const finalOptions = connectPort
@@ -161,54 +97,40 @@ async function spawnConnect(options, localReactorUrl) {
161
97
  });
162
98
  });
163
99
  }
164
- export async function startVetra({ generate, watch, switchboardPort = DefaultReactorOptions.port, reactorPort = DefaultReactorOptions.port + 1, connectPort, disableDefaultDrive = true, configFile, verbose = false, remoteDrive, }) {
100
+ export async function startVetra({ generate, watch, switchboardPort = DefaultReactorOptions.port, connectPort, configFile, verbose = false, remoteDrive, disableConnect = false, }) {
165
101
  try {
102
+ // Set default log level to info if not already specified
103
+ if (!process.env.LOG_LEVEL) {
104
+ setLogLevel("info");
105
+ }
166
106
  const baseConfig = getConfig(configFile);
167
107
  const https = baseConfig.reactor?.https;
168
- let driveUrl;
169
- if (remoteDrive) {
170
- // Use provided remote drive URL, skip switchboard
171
- driveUrl = remoteDrive;
172
- if (verbose) {
173
- console.log(`Using remote drive: ${remoteDrive}`);
174
- }
175
- }
176
- else {
177
- // Start Vetra Switchboard
178
- if (verbose) {
179
- console.log("Starting Vetra Switchboard...");
180
- }
181
- const switchboardResult = await spawnLocalVetraSwitchboard({
182
- generate,
183
- port: switchboardPort,
184
- watch,
185
- https,
186
- configFile,
187
- verbose,
188
- });
189
- driveUrl = switchboardResult.driveUrl;
190
- }
108
+ // Always start Vetra Switchboard
191
109
  if (verbose) {
192
- console.log("Starting Codegen Reactor...");
110
+ console.log("Starting Vetra Switchboard...");
193
111
  }
194
- await spawnLocalReactor({
112
+ const switchboardResult = await startLocalVetraSwitchboard({
195
113
  generate,
196
- port: reactorPort,
114
+ port: switchboardPort,
197
115
  watch,
198
116
  https,
199
- disableDefaultDrive,
200
117
  configFile,
201
- processors: ["ph/codegen/processor"],
202
118
  verbose,
203
- }, driveUrl);
204
- // Start Connect pointing to the drive
119
+ }, remoteDrive);
120
+ const driveUrl = remoteDrive || switchboardResult.driveUrl;
205
121
  if (verbose) {
206
- console.log("Starting Connect...");
207
- console.log(` ➜ Connect will use drive: ${driveUrl}`);
122
+ console.log("Starting Codegen Reactor...");
123
+ }
124
+ // Start Connect pointing to the drive (unless disabled)
125
+ if (!disableConnect) {
126
+ if (verbose) {
127
+ console.log("Starting Connect...");
128
+ console.log(` ➜ Connect will use drive: ${driveUrl}`);
129
+ }
130
+ await spawnConnect(connectPort
131
+ ? { configFile, verbose, connectPort }
132
+ : { configFile, verbose }, driveUrl);
208
133
  }
209
- await spawnConnect(connectPort
210
- ? { configFile, verbose, connectPort }
211
- : { configFile, verbose }, driveUrl);
212
134
  }
213
135
  catch (error) {
214
136
  console.error(error);
@@ -1 +1 @@
1
- {"version":3,"file":"vetra.js","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vetra.js","sourceRoot":"","sources":["../../../src/services/vetra.ts"],"names":[],"mappings":"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"}