loop
Overview
loop.mjs is a dependency-free Node ESM runner that registers and fires codex exec jobs on a fixed interval. It manages task state in .codex/loop/ and exposes 8 subcommands: parse-loop, add, list, cancel, status, run-due, daemon, doctor.
It supports only the interval-repeat (loop) task kind. For cron schedules or a one-shot run at a specific time, use the separate schedule skill instead.
Durable Always-On: Use Automations First
Codex app Automations is the official, always-on surface for durable recurring runs — recommend it first. It persists across reboots and terminal exits without a running process.
The bundled local CLI is a terminal fallback only: nothing fires unless the daemon process is running. It is NOT an OS service and does not survive terminal exits.
Local Fallback Usage
All state-mutating commands require --state-root <dir>. Conventional path: --state-root .codex/loop.
Add a loop task
User says /loop 1m check CI status: