mirror of
https://github.com/openclaw/openclaw.git
synced 2026-06-09 18:02:53 +00:00
Extract shared normalization/coercion helpers into private @openclaw/normalization-core workspace package while preserving existing plugin SDK helper subpaths.\n\nAlso keeps direct normalization-core imports internal, wires UI/build/loader resolution, and replaces the slow PR network CodeQL lane with a fast added-line boundary scan while retaining full CodeQL for scheduled/manual runs.\n\nVerification: local moved tests, plugin SDK boundary tests, extension loader tests, agents-support shard, UI build/test, build artifacts, lint, workflow guards, autoreview, and GitHub CI passed on PR head 963d893715.
10 lines
390 B
TypeScript
10 lines
390 B
TypeScript
import { normalizeLowercaseStringOrEmpty } from "@openclaw/normalization-core/string-coerce";
|
|
|
|
export function buildNodeShellCommand(command: string, platform?: string | null) {
|
|
const normalized = normalizeLowercaseStringOrEmpty((platform ?? "").trim());
|
|
if (normalized.startsWith("win")) {
|
|
return ["cmd.exe", "/d", "/s", "/c", command];
|
|
}
|
|
return ["/bin/sh", "-lc", command];
|
|
}
|