/** * @file ProcessCodeSandbox — 进程级代码执行沙箱 * @description 扩展 LocalSandbox,实现 CodeSandbox 接口 * 支持结构化执行结果(stdout/stderr/files/charts) */ import { LocalSandbox } from './local-sandbox.js'; import type { CodeSandbox, CodeExecutionResult } from '@cicctencent/agent-core'; export declare class ProcessCodeSandbox extends LocalSandbox implements CodeSandbox { /** * 执行代码并返回结构化结果 * @param code 代码内容 * @param lang 语言:python / nodejs / shell * @param timeout 超时(ms),默认 30000 */ execute(code: string, lang: string, timeout?: number): Promise; /** * 执行已物化的脚本文件(已注入 sb preamble,无需再次 prepareScript)。 * * 用于 skill 整包执行:prepareScriptInPackage 物化入口后直接运行该文件, * cwd 设为包根目录,使 `from lib import` 等包内依赖正确解析。 * 与 executeStream 类似使用 spawn,但接收文件路径而非代码内容,且支持 args。 */ executeFile(filePath: string, lang: string, opts?: { timeout?: number; cwd?: string; args?: string[]; callbacks?: { onStdoutLine?: (line: string) => void; onStderrChunk?: (chunk: string) => void; }; }): Promise; /** * 流式执行代码:边运行边把 stdout 按行、stderr 按块回调给调用方, * 适合需要实时展示日志/进度的场景(如自动化任务试运行)。 * 执行结束后仍会扫描产物文件(与 execute 一致)。 */ executeStream(code: string, lang: string, timeout?: number, handlers?: { onStdoutLine?: (line: string) => void; onStderrChunk?: (chunk: string) => void; }): Promise; /** * 列出沙箱目录中的文件(排除脚本文件本身) */ private static readonly RUNTIME_INJECTED_FILES; private listNewFiles; /** * 读取沙箱中指定文件的内容 */ readFile(filename: string): Promise; } //# sourceMappingURL=process-code-sandbox.d.ts.map