UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

73 lines (72 loc) 2.43 kB
import { _ as resolveNodeSystemdServiceName, c as NODE_WINDOWS_TASK_SCRIPT_NAME, g as resolveNodeLaunchAgentLabel, o as NODE_SERVICE_KIND, s as NODE_SERVICE_MARKER, v as resolveNodeWindowsTaskName } from "./constants-e049XCW0.js"; import { i as resolveGatewayService } from "./service-MPqQWJ3s.js"; //#region src/daemon/node-service.ts /** Adapts the generic gateway service manager for OpenClaw node-host services. */ function withNodeServiceEnv(env) { return { ...env, OPENCLAW_LAUNCHD_LABEL: resolveNodeLaunchAgentLabel(), OPENCLAW_SYSTEMD_UNIT: resolveNodeSystemdServiceName(), OPENCLAW_WINDOWS_TASK_NAME: resolveNodeWindowsTaskName(), OPENCLAW_WINDOWS_TASK_HIDDEN_LAUNCHER: "1", OPENCLAW_TASK_SCRIPT_NAME: NODE_WINDOWS_TASK_SCRIPT_NAME, OPENCLAW_LOG_PREFIX: "node", OPENCLAW_SERVICE_MARKER: NODE_SERVICE_MARKER, OPENCLAW_SERVICE_KIND: NODE_SERVICE_KIND }; } function withNodeInstallEnv(args) { return { ...args, env: withNodeServiceEnv(args.env), environment: { ...args.environment, OPENCLAW_LAUNCHD_LABEL: resolveNodeLaunchAgentLabel(), OPENCLAW_SYSTEMD_UNIT: resolveNodeSystemdServiceName(), OPENCLAW_WINDOWS_TASK_NAME: resolveNodeWindowsTaskName(), OPENCLAW_WINDOWS_TASK_HIDDEN_LAUNCHER: "1", OPENCLAW_TASK_SCRIPT_NAME: NODE_WINDOWS_TASK_SCRIPT_NAME, OPENCLAW_LOG_PREFIX: "node", OPENCLAW_SERVICE_MARKER: NODE_SERVICE_MARKER, OPENCLAW_SERVICE_KIND: NODE_SERVICE_KIND } }; } /** Returns a service controller bound to node-host labels across all platforms. */ function resolveNodeService() { const base = resolveGatewayService(); return { ...base, stage: async (args) => { return base.stage(withNodeInstallEnv(args)); }, install: async (args) => { return base.install(withNodeInstallEnv(args)); }, uninstall: async (args) => { return base.uninstall({ ...args, env: withNodeServiceEnv(args.env) }); }, stop: async (args) => { return base.stop({ ...args, env: withNodeServiceEnv(args.env ?? {}) }); }, restart: async (args) => { return base.restart({ ...args, env: withNodeServiceEnv(args.env ?? {}) }); }, isLoaded: async (args) => { return base.isLoaded({ env: withNodeServiceEnv(args.env ?? {}) }); }, readCommand: (env) => base.readCommand(withNodeServiceEnv(env)), readRuntime: (env) => base.readRuntime(withNodeServiceEnv(env)) }; } //#endregion export { resolveNodeService as t };