MCPcopy Create free account
hub / github.com/OpenHands/OpenHands / buildSafeDevConfigAsync

Function buildSafeDevConfigAsync

scripts/dev-safe.mjs:557–582  ·  view source on GitHub ↗
(
  cwd = process.cwd(),
  env = process.env,
)

Source from the content-addressed store, hash-verified

555 * @returns {Promise<SafeDevConfig>} Configuration object with allocated ports
556 */
557export async function buildSafeDevConfigAsync(
558 cwd = process.cwd(),
559 env = process.env,
560) {
561 // Get preferred ports from env or defaults
562 const preferredBackendPort = parsePort(
563 env.OH_CANVAS_SAFE_BACKEND_PORT,
564 DEFAULT_BACKEND_PORT,
565 );
566 const preferredVscodePort = parsePort(
567 env.OH_CANVAS_SAFE_VSCODE_PORT,
568 preferredBackendPort + 1,
569 );
570
571 // Fail fast if any required port is already in use.
572 await assertPortsFree([
573 { name: "agent-server", port: preferredBackendPort },
574 { name: "vscode", port: preferredVscodePort },
575 ]);
576
577 return buildConfigFromPorts(
578 { backendPort: preferredBackendPort, vscodePort: preferredVscodePort },
579 cwd,
580 env,
581 );
582}
583
584/**
585 * @typedef {object} SafeDevConfig

Callers 2

dev-safe.test.tsFile · 0.90
mainFunction · 0.85

Calls 3

assertPortsFreeFunction · 0.85
buildConfigFromPortsFunction · 0.85
parsePortFunction · 0.70

Tested by

no test coverage detected