Deterministic backlog loop for Codex CLI

A Codex-first autonomous runner that pulls exactly one task per iteration from a JSON backlog with fresh context each run and a JSONL audit log for full traceability.

prompt
→ Claude
Autonomous runner: exactly one task per iteration pulled from a JSON backlog, fresh context each run, JSONL audit log for traceability; optional Claude Code interleaving.
claude-code

Implementation note

When to use: you want Ralph-style backlog grinding with Codex CLI as the engine, in contexts where traceability matters — you need to answer what the loop did on iteration 14 after the fact. How it works: an autonomous runner that pulls exactly one task per iteration from a JSON backlog, runs it with fresh context, and appends a JSONL audit log entry per iteration, giving the whole run a machine-readable paper trail. The one-task-per-iteration discipline keeps each run bounded and attributable, and the JSON backlog is the shared state between iterations. It can optionally interleave Claude Code runs alongside Codex. Safety: the JSONL audit log is the distinguishing rail — full traceability of what ran, when, and against which task, which most homemade Ralph loops lack entirely. Keep backlog items small and independently shippable, and bound total iterations yourself, since the runner's determinism governs task selection, not spend.

Source: nibzard/looper

More automation loops

Run workflows with dynamic sub-agents

/goalnew

Split a task into packets, run sub-agents in parallel, synthesize results, and verify completion.

prompt
→ Claude
/goal loop and verify until complete
automationlow risk

Run agent turns until goal met

/goalnew

Agent executes repeated turns toward a condition, with a lightweight evaluator checking progress after each turn until the goal is reached.

prompt
→ Claude
/goal <condition turns a prompt into a durable objective. Thanos immediately starts a turn toward the condition, and after each turn a fresh, tool-less side-channel evaluator (a one-shot completeSimple call, not a subagent — so no extra agent turn and no re-entrancy) reads the last turn's evidence and returns MET / NOT MET . NOT MET auto-continues another turn with the reason as guidance; MET clears the goal and records the achievement. Unparseable evaluator output is treated as NOT MET (fail-safe: it never declares a false "done
automationmedium risk

Run agent until goal met

/goalnew

Queue agent turns with goal context until your objective is achieved, treating the goal as untrusted data.

prompt
→ Claude
/goal <objective , after /goal resume , and after every agent turn that leaves the goal active , the extension queues Codex's goal continuation prompt as hidden model-visible context. The objective is XML-escaped and wrapped as untrusted user data so it does not become higher-priority instructions
automationlow risk