Files
ableton-mcp-ai/ralph/scripts/Invoke-CodexNextTask.ps1

45 lines
1.3 KiB
PowerShell

param(
[Parameter(Mandatory = $true)][string]$TaskDirectory,
[Parameter(Mandatory = $true)][string]$RunDirectory,
[Parameter(Mandatory = $true)][string]$OutputFile,
[Parameter(Mandatory = $true)][string]$RunStatus,
[string]$WorkingDirectory = "",
[string[]]$ExtraSections = @()
)
. (Join-Path $PSScriptRoot "Common.ps1")
if ([string]::IsNullOrWhiteSpace($WorkingDirectory)) {
$WorkingDirectory = Get-RepoRoot
}
$taskPack = Read-TaskPack -TaskDirectory $TaskDirectory
$ralphRoot = Get-RalphRoot
$promptPath = Join-Path $RunDirectory "prompts\codex_next_task.md"
$sections = @(
"## PREVIOUS RUN DIRECTORY`n$RunDirectory",
"## PREVIOUS RUN STATUS`n$RunStatus"
)
foreach ($section in $ExtraSections) {
$sections += $section
}
New-PromptDocument `
-TemplatePath (Join-Path $ralphRoot "templates\CODEX_NEXT_TASK_PROMPT.md") `
-TaskPack $taskPack `
-OutputPath $promptPath `
-ExtraSections $sections
& (Join-Path $PSScriptRoot "Invoke-CodexMaster.ps1") `
-PromptFile $promptPath `
-OutputFile $OutputFile `
-WorkingDirectory $WorkingDirectory `
-SkipVerdictParse | Out-Null
if (-not (Test-Path $OutputFile)) {
throw "Codex next-task generation did not produce output: $OutputFile"
}
Get-Content -Raw -Path $OutputFile