Files
zn-ai/electron/service/script-execution-service/index.ts
2026-04-12 15:46:28 +08:00

38 lines
858 B
TypeScript

import { executeScriptService } from '@electron/service/execute-script-service';
import {
getScriptPathById,
updateLastRun,
} from '@electron/service/script-store-service';
import type { ScriptExecutionResult } from '@lib/script-types';
const executor = new executeScriptService();
export async function runScriptById(
id: string,
channel?: string,
): Promise<ScriptExecutionResult> {
const scriptPath = getScriptPathById(id);
if (!scriptPath) {
return {
success: false,
exitCode: null,
stdoutTail: '',
stderrTail: '',
error: 'Script not found',
};
}
const result = await executor.executeScript(scriptPath, {
SCRIPT_ID: id,
CHANNEL: channel || '',
});
updateLastRun(id, {
time: new Date().toISOString(),
success: result.success,
error: result.error,
});
return result;
}