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
npx -y skills add asong56/skills --skill FRM-loopAssembled 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 statusENABLE_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
/copyafter 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
| pacing | delaySeconds | |
|---|---|---|
worker | 270 | Worker 5 min cache warm |
ci | 270 | CI |
plateau | 1200 | 20 minplateau |
night | 3600 |
****:
ScheduleWakeupdelaySeconds[60, 3600] clampworker/ci270snight3600s
: ${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 :
CLAUDE_PLUGIN_ROOTscripts/CLAUDE_PLUGIN_ROOTCLAUDE_SKILL_DIRplugin bundle root
skills/FRM-loop${CLAUDE_SKILL_DIR}/../...agents/skills/FRM-loopmirror${CLAUDE_SKILL_DIR}/../../..
CLAUDE_PLUGIN_ROOTplugin 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_CHANGESplateauadvisorSTOP -
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/
- flow.md16.1 KB