Skip to content
Development
Command

/plan-loop

Run a planning-aware cadence with Claude Code's /loop. Default tick checks plan status, runs check-complete, nudges progress.md update if stalled. Available since v2.38.0.

From plugin
planning-with-files
28k13 skills13 commands6 hooks
> /plugin marketplace add OthmanAdi/planning-with-files
> /plugin install planning-with-files@planning-with-files

Command definition

plan-loop.md
description: "Run a planning-aware cadence with Claude Code's /loop. Default tick checks plan status, runs check-complete, nudges progress.md update if stalled. Available since v2.38.0."
disable-model-invocation: true
allowed-tools: "Read Bash"

Run a planning-aware cadence on top of Claude Code's `/loop` primitive.

Steps:

1. Parse args:

  • First arg matching `^\d+[smhd]$` is the interval (default `10m`).
  • Remaining args are an optional task prompt.

2. Resolve the active plan as in `/plan-attest`. 3. Compose the loop prompt:

  • If user passed a task prompt: use it verbatim.
  • Else: use the default planning tick prompt:
     Read task_plan.md and progress.md. Run scripts/check-complete.sh to see remaining phases.
     If no progress.md entry has been added since the last loop tick, write one summarizing the current state.
     If a phase finished, update its Status: line in task_plan.md.
     Continue the next phase if work remains.

4. Invoke `/loop <interval> <prompt>`. 5. Confirm to the user: print the interval, the active plan ID, and remind that bare `/loop` invocation alone (without args) runs Claude Code's built-in maintenance prompt — `/plan-loop` differs by always grounding the tick in the planning files.

If `task_plan.md` does not exist, refuse and direct user to run `/plan` first.

Why this exists:

`/loop` runs prompts on cron without any plan-state contract. `/plan-loop` injects a plan-aware default so the recurring tick always re-reads the planning files first, runs the completion check, and writes a progress entry. Users get "babysit my plan" UX without writing a custom loop prompt.

Notes:

  • `/plan-loop` composes with `/loop`; it does not replace it. `/loop 5m "anything"` still works.
  • For "babysit until plan is done" semantics: combine `/plan-loop 10m` (cadence) with `/plan-goal` (termination criterion). The loop runs every 10 minutes; the goal stops the loop when the plan is complete.
  • The default tick prompt is intentionally short so it stays within compaction-safe length.
Read more
@othmanadi
Ships withplanning-with-files

Persistent file-based planning for AI coding agents and long-running tasks. Crash-proof markdown plans, session recovery after /clear and compaction, per-turn re-injection against context rot, deterministic completion gate. Manus-style. Install from npm, the Claude Code plugin marketplace, or npx skills. Codex, Cursor, OpenCode, 60+ agents.

Stars on GitHub

Momentum

stars in total
27.8k
Star history of OthmanAdi/planning-with-files on GitHub, a chart by star-history.com

Other commands on planning-with-files.

plan-ar

plan-ar

Command

بدء تخطيط الملفات بنمط Manus. إنشاء task_plan.md و findings.md و progress.md للمهام المعقدة.

plan-attest

plan-attest

Command

Lock the current task_plan.md content with a SHA-256 attestation. Hooks then refuse to inject plan content if the file diverges…

plan-doctor

plan-doctor

Command

Self-check for the planning-with-files mechanisms that fail silently: plan resolution, hook injection, canonicalizer path shape,…

plan-es

plan-es

Command

Iniciar planificación de archivos estilo Manus. Crear task_plan.md, findings.md, progress.md para tareas complejas.

plan-goal

plan-goal

Command

Bridge Claude Code's /goal to the active plan. Derives a goal condition from task_plan.md and invokes /goal so Claude keeps…

More commands from other plugins.

build
Auto-invoked

build

Command

Implement tasks incrementally — build, test, verify, commit. Add "auto" to run the whole plan in one approved pass.

@addyosmani@addyosmaniInstall Command