agentsclimarketplace

FRM loop

Skill asong56/skills/03-build/universal/FRM-loop

Long-running task loop using /loop (Claude Code dynamic mode) and ScheduleWakeup to re-enter with fresh context on each wake-up. Internally invokes FRM-work through Agent. Trigger: long-running, loop, wake-up, autonomous. Do NOT load for: one-...From its SKILL.md

Install
npx -y skills add asong56/skills --skill FRM-loop

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

5.5 KB, ~1.6k tokens by cl100k_base, as published. Nobody here has run it

FRM-loop

/loopCC dynamic mode ScheduleWakeup **wake-up fresh context **

wake-up FRM-work --breezing Agent

Long-session helpers (CC 2.1.108+): /recap /FRM-loop status ENABLE_PROMPT_CACHING_1H=1

** (CC 2.1.108+)**: 30 plugin bundle root bash "${FRM_PLUGIN_ROOT}/scripts/enable-1h-cache.sh" 1 prompt cache opt-in

Codex 0.123.0 automatic bug fix inheritance: manual shell follow-up queue /copy after rollback Codex TUI loop runner queuecopy wrapperrollback workaround manual shell follow-up queueing Codex runtime

Quick Reference

|------|------| | /FRM-loop all | default: max 8 | | /FRM-loop all --max-cycles 3 | 3 | | /FRM-loop 41.1-41.3 --pacing ci | CI pacing | | /FRM-loop all --plan roadmap | named Plans roadmap | | /FRM-loop all --pacing night | 3600s | | /FRM-loop status | | | /FRM-loop stop | |

|----------|------|----------| | all | | - | | N-M | | - | | --plan NAME | plans/manifest.json named plan | active/default | | --max-cycles N | | 8 | | --pacing <mode> | wake-up | worker270s |

pacing

pacingdelaySeconds
worker270Worker 5 min cache warm
ci270CI
plateau120020 minplateau
night3600

****: ScheduleWakeup delaySeconds [60, 3600] clamp worker / ci 270s night 3600s

: ${CLAUDE_SKILL_DIR}/references/flow.md

plugin bundle root

FRM-loop host project cwd plugin bundle root helper script host projectplugin bundle

wake-up FRM_PLUGIN_ROOT :

  1. CLAUDE_PLUGIN_ROOT scripts/
  2. CLAUDE_PLUGIN_ROOT CLAUDE_SKILL_DIR plugin bundle root
  • skills/FRM-loop ${CLAUDE_SKILL_DIR}/../..
  • .agents/skills/FRM-loop mirror ${CLAUDE_SKILL_DIR}/../../..
  1. CLAUDE_PLUGIN_ROOT plugin bundle root

Plans.md .claude/state/... host project helper script ${FRM_PLUGIN_ROOT}/scripts/...

Plans.md repo run --plan NAME runner Plans file cycle active plan

wake-up
  │
  ▼
[Step 0] plugin bundle root FRM_PLUGIN_ROOT
 CLAUDE_PLUGIN_ROOT
 CLAUDE_SKILL_DIR plugin bundle root
 ※ host project cwd scripts/
  │
  ▼
[Step 1] Plans.md
 cc:WIP / cc:TODO task_id
  │
  ▼
[Step 2] sprint-contract &
 .claude/state/contracts/${task_id}.sprint-contract.json
 node "${FRM_PLUGIN_ROOT}/scripts/generate-sprint-contract.js" ${task_id}
 : bash "${FRM_PLUGIN_ROOT}/scripts/enrich-sprint-contract.sh" <contract-path> \
 --check "wake-up FRM-loop DoD reviewer " \
 --approve ← draft → approved
 contract approved
  │
  ▼
[Step 3] contract readiness
  bash "${FRM_PLUGIN_ROOT}/scripts/ensure-sprint-contract-ready.sh" <contract-path>
  │
  ▼
[Step 4] Resume pack
 FRM-mem resume-pack
  │
  ▼
[Step 4.5] Advisor consult
 `advisor-request.v1`
  │
 ├── PLAN → executor prompt advice prepend
 ├── CORRECTION →
 └── STOP → loop
  │
  ▼
[Step 5] 1
  worker_result = Agent(
 subagent_type="FRM:worker", # worker FRM-work
 prompt=": ${task_id}\nDoD: <Plans.md >\ncontract_path: ${CONTRACT_PATH}\nmode: breezing"
      isolation="worktree",
      run_in_background=false
  )
  # worker_result: { commit, branch, worktreePath, files_changed, summary }
  │
  ▼
[Step 5.5] Lead
  diff_text = git show worker_result.commit
  verdict = codex_exec_review(diff_text) or reviewer_agent_review(diff_text)
 ※ flow.md
  │
  ▼
[Step 5.6] APPROVE → main cherry-pick / REQUEST_CHANGES → contract max_iterations 3
 APPROVE: git cherry-pick → Plans.md cc: [{hash}] → feature branch
 REQUEST_CHANGES x MAX_REVIEWS :
 ※ flow.md
  │
  ▼
[Step 6] plateau
  bash "${FRM_PLUGIN_ROOT}/scripts/detect-review-plateau.sh" ${current_task_id}
  │
 ├── PIVOT_REQUIREDexit 2 → +
 ├── INSUFFICIENT_DATAexit 1→
 └── PIVOT_NOT_REQUIREDexit 0→
  │
  ▼
  │
 ├── cycles >= max_cycles →
  │
  ▼
[Step 8] checkpoint
  FRM_mem_record_checkpoint(
 session_id, title, content=
  )
  │
  ▼
[Step 9] wake-up
  ScheduleWakeup(
 delaySeconds=<pacing>
 prompt="/FRM-loop <>"
 reason=" {N}/{max} — "
  )

|------|---------|------| | cycles >= max_cycles | | | | PIVOT_REQUIREDexit 2 | | |

--max-cycles 3 3 default--max-cycles 8 8

/ Silence Policy

Codex 0.123.0 background agent transcript delta delta

  • cycle blocked

  • validation failurereview REQUEST_CHANGESplateauadvisor STOP

  • advisor / reviewer driftcontract readiness failure

  • user status

  • transcript delta task / review / advisor

  • wake-up pacing

default 1 cycle 1 Advisor request Reviewer result plateau silence policy

/loop

CC /loopdynamic mode

ScheduleWakeup wake-up

/loop : <<autonomous-loop-dynamic>>

FRM-mem resume-pack resume pack Step 2

checkpoint

FRM_mem_record_checkpoint :

{
 "session_id": "< ID>"
 "title": "FRM-loop cycle {N}/{max}: {}"
 "content": "cycle_result 1 + commit hash"
}

Advisor Strategy

skill executor advisor

|------|-----------| | needs-spike / security-sensitive / state-migration | | | <!-- advisor:required --> | | | plateau | |

trigger_hash = task_id + reason_code + normalized_error_signature

  • FRM-work
  • FRM-plan
  • FRM-review
  • session-control

What ships with it: 1 file

16.1 KB alongside SKILL.md

references/

Keep looking

Skills are one crate of 326,144. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.