import type { SessionOpts } from '../types/run-result.js'; import type { Effort } from '../types/task-spec.js'; export interface CodexCliConfig { /** Required. Model id passed to `-m`. */ model: string; /** Optional. Reasoning level for `-c model_reasoning_effort`. Already * resolved (default applied, capability-gated) by providers/effort.ts — * absent means the model has no effort knob, so no flag is emitted. */ effort?: Effort; /** Optional. When set, registers a custom model_provider with this base_url. */ baseUrl?: string; /** Optional. Env-var name read by codex for the API key when baseUrl is set. */ apiKeyEnv?: string; /** Optional. Static API key — injected into env under apiKeyEnv at spawn time. */ apiKey?: string; } interface BuildLaunchInput { cfg: CodexCliConfig; opts: Pick; outputFile: string; schemaFile?: string; /** When set, the launch is a `codex exec resume ` (subsequent turn). */ resumeSessionId?: string; /** When set, becomes the subprocess `CODEX_HOME` (ephemeral skills home). */ codexHome?: string; } interface CodexCliLaunch { command: string; args: string[]; env: Record; } export declare function buildCodexCliLaunch(input: BuildLaunchInput): CodexCliLaunch; export {}; //# sourceMappingURL=codex-cli-launch.d.ts.map