PHPocalypse-MCP

by plapinski
Verified
import { config } from "./config.js"; import { execSync } from 'child_process'; export interface CliOutput { exitCode: number; stdoutBase64Encoded: string; stderrBase64Encoded: string; } export const executeCommand = async (command: string): Promise<CliOutput> => { try { const stdout = execSync(command, { cwd: config.basePath, encoding: 'utf-8', maxBuffer: 10 * 1024 * 1024, timeout: 120000, stdio: 'pipe' }); return { exitCode: 0, stdoutBase64Encoded: Buffer.from(stdout).toString('base64'), stderrBase64Encoded: '' }; } catch (error: any) { return { exitCode: error.code ?? error.status ?? 1, stdoutBase64Encoded: Buffer.from(error.stdout).toString('base64'), stderrBase64Encoded: Buffer.from(error.stderr).toString('base64') }; } };