fix: 修复 runner Codex shell 工具环境
This commit is contained in:
@@ -46,12 +46,15 @@ export function createBackendSession(run: RunRecord, options: BackendAdapterOpti
|
||||
|
||||
export function backendTurnOptions(run: RunRecord, command: CommandRecord, options: BackendAdapterOptions = {}): CodexStdioTurnOptions {
|
||||
const prompt = typeof command.payload.prompt === "string" ? command.payload.prompt : JSON.stringify(command.payload);
|
||||
const sandboxOverride = codexShellSandboxOverride(options.env ?? process.env);
|
||||
const turnOptions: CodexStdioTurnOptions = {
|
||||
backendProfile: run.backendProfile,
|
||||
prompt,
|
||||
cwd: options.workspacePath ?? (typeof run.workspaceRef.path === "string" ? run.workspaceRef.path : process.cwd()),
|
||||
approvalPolicy: run.executionPolicy.approval,
|
||||
sandbox: run.executionPolicy.sandbox,
|
||||
sandbox: sandboxOverride ?? run.executionPolicy.sandbox,
|
||||
requestedSandbox: run.executionPolicy.sandbox,
|
||||
sandboxOverrideSource: sandboxOverride ? "AGENTRUN_CODEX_SHELL_SANDBOX" : null,
|
||||
timeoutMs: run.executionPolicy.timeoutMs,
|
||||
};
|
||||
if (typeof command.payload.model === "string") turnOptions.model = command.payload.model;
|
||||
@@ -67,3 +70,8 @@ export function backendTurnOptions(run: RunRecord, command: CommandRecord, optio
|
||||
if (options.onActiveTurn) turnOptions.onActiveTurn = options.onActiveTurn;
|
||||
return turnOptions;
|
||||
}
|
||||
|
||||
function codexShellSandboxOverride(env: NodeJS.ProcessEnv): string | null {
|
||||
const value = env.AGENTRUN_CODEX_SHELL_SANDBOX?.trim();
|
||||
return value && value.length > 0 ? value : null;
|
||||
}
|
||||
|
||||
@@ -45,6 +45,8 @@ export interface CodexStdioTurnOptions {
|
||||
threadId?: string;
|
||||
approvalPolicy: string;
|
||||
sandbox: string;
|
||||
requestedSandbox?: string;
|
||||
sandboxOverrideSource?: string | null;
|
||||
timeoutMs: number;
|
||||
command?: string;
|
||||
args?: string[];
|
||||
@@ -1065,6 +1067,12 @@ function backendMetadata(options: CodexStdioTurnOptions): JsonRecord {
|
||||
backendKind: spec?.backendKind ?? "codex-app-server-stdio",
|
||||
protocol: spec?.protocol ?? codexProtocol,
|
||||
transport: spec?.transport ?? "stdio",
|
||||
sandbox: {
|
||||
requested: options.requestedSandbox ?? options.sandbox,
|
||||
effective: options.sandbox,
|
||||
overrideSource: options.sandboxOverrideSource ?? null,
|
||||
valuesPrinted: false,
|
||||
},
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user