import {promisify} from "util"; import {execFile} from "child_process"; import type {SysCallMapping} from "../system"; const execFilePromise = promisify(execFile); export default function (cwd: string): SysCallMapping { return { "shell.run": async ( ctx, cmd: string, args: string[] ): Promise<{ stdout: string; stderr: string }> => { let { stdout, stderr } = await execFilePromise(cmd, args, { cwd: cwd, }); return { stdout, stderr }; }, }; }