Skip to content
loop-factory logo

Loop Factory

loop-factory

Run a spec-driven agent loop where coding tasks live as markdown specs that move through inbox → active → archive, get implemented by Claude Code or Codex, and pass a review gate before they count as done. Use when the user mentions "loop factory", a "spec-driven loop", an "agent factory", wants repeatable/reviewable agent work, or when a repo has a factory/specs/inbox or factory/specs/active directory. Also covers installing and scaffolding the loop-factory CLI into a project.

juliusbrussee/skills1.8Kinstalls160stars

SKILL.md

Full skill instructions

Loop Factory

Loop Factory turns "ask an agent to build something" into a visible assembly line. Each task is a markdown spec. The folder the spec lives in is its state. Agents implement and verify; they never decide what to build.

   📥 inbox/          🔧 active/           📦 archive/
   tasks not      ──► task an agent    ──► finished work,
   started yet        is building now      reviewed + accepted

The one rule that governs everything: automate implementation and verification, not product decisions. If a spec is missing a decision, record the open question — do not invent product direction.

Invoke this skill on demand by typing /​loop-factory (one manual pass), or let a cron fire it unattended — see Autonomous mode.

When to use this skill

  • Setting up Loop Factory in a repo (installing the CLI, running init).
  • Picking a spec out of the inbox and dispatching it to Claude Code or Codex.
  • Implementing a spec against its acceptance criteria.
  • Reviewing finished work and archiving accepted specs.
  • Backpropagating implementation learnings into the living specs/​docs.

Setup (first time in a repo)

The loop-factory CLI is the state engine. Install it once, then scaffold any git repo:

# get the CLI (clone the source repo, install editable)
git clone https://github.com/​JuliusBrussee/​Loop-Factory.git
python3 -m pip install -e ./​Loop-Factory

# scaffold the factory/ folders in your target project
cd your-project
loop-factory init
loop-factory doctor      # confirm git + agent CLIs are wired up

No runtime dependencies beyond Python 3.10+. If you are already inside the Loop-Factory repo, you can skip the install and run python3 bin/​loop-factory <command> directly. Full install notes, agent-CLI setup, and how to copy the native agent adapters: references/​install.md.

The loop

  1. Inspect the queue. Run loop-factory scan to see inbox and active specs.
  2. Grill new specs first. Before dispatching a fresh spec, interrogate it one question at a time (who owns this decision, what's out of scope, riskiest assumption, smallest acceptable version). Record answers under a # Grill Gate section. A vague spec produces vague code.
  3. Dispatch. Generate the implementation prompt and move the spec to active/:
    loop-factory dispatch --agent claude --limit 1 --stage
    
    This writes a prompt to factory/​prompts/ and a run record to factory/​runs/. It does not run the AI unless you add --execute.
  4. Implement. Build only the acceptance criteria. Match existing code style. Stay scoped.
  5. Verify. Run every command listed in the spec's verification: frontmatter. Capture the output as evidence.
  6. Review. Generate a review prompt and check the diff against the criteria:
    loop-factory review <spec-id> --agent claude
    
    Pass → archive. Fail → leave the spec in active/ for another pass.
  7. Archive accepted work.
    loop-factory archive <spec-id> --accepted
    
    --accepted is required on purpose — nothing leaves active/ without a confirmed pass.
  8. Backpropagate. If building the feature changed how the system actually works, sync that back into specs/​docs without changing product intent:
    loop-factory backprop --agent claude
    

Autonomous mode

Run a single self-contained pass that drains the inbox with no human present. Trigger it when invoked with "autonomous" / "drain the inbox", by a scheduled cron, or repeatedly by /​loop (e.g. /​loop 30m /​loop-factory).

A pass does exactly this:

  1. Scan factory/​specs/​inbox/.
  2. Filter to ready specs only. A spec is ready when its grill gate is complete — grill: completed in frontmatter, or a filled-in # Grill Gate section. Skip anything else and log it as "needs grilling." Never grill autonomously: the grill gate needs human answers, and inventing them would be deciding product direction.
  3. For each ready spec: stage → implement against acceptance criteria → run verification.
  4. Stop at the review gate. Leave built specs in active/. Do not archive — acceptance stays a human decision.
  5. If verification fails, leave the spec in active/ with a note in factory/​runs/. Do not retry in a loop or weaken the criteria to make it pass.
  6. Report: built, skipped (needs grilling), failed-verification — and stop.

This keeps the boundary intact: the loop is a tireless builder, never a silent decider.

Two ways to fire it on a recurring basis:

  • /​loop (local, recommended for active work) — /​loop 30m /​loop-factory re-runs this skill on any interval against your local working tree. Built specs land in active/; no git push or PR needed. Only runs while a Claude Code session is open.
  • Cron (cloud, unattended) — a scheduled routine that runs whether or not you're online (minimum 1-hour interval) and returns work as a pull request.

Both, plus the safety knobs, are in references/​autonomous.md.

Core commands

loop-factory scan                              # list inbox + active specs
loop-factory dispatch --agent <claude|codex> --stage   # prompt + move to active
loop-factory review <spec-id> --agent <claude|codex>   # generate review prompt
loop-factory archive <spec-id> --accepted      # archive a passed spec
loop-factory backprop --agent <claude|codex>   # sync docs/​specs with code
loop-factory doctor                            # health-check setup

Swap --agent claude for --agent codex anywhere — the loop is identical. Default behavior writes prompt files; add --execute only when the local codex/claude CLI is installed and the user asked for live execution. Full flag reference: references/​commands.md.

Writing specs

A spec is markdown with frontmatter (id, title, agent, risk, verification) and a body covering Context, Acceptance Criteria, Constraints, and Review Notes. The acceptance criteria are the contract — they're what the agent builds toward and what the reviewer checks against, so make them concrete and testable. Format, examples, and the grill-gate questions: references/​spec-authoring.md.

Boundaries

  • Only a human or an explicit CLI command moves a spec from inbox to active.
  • Only an accepted review moves a spec from active to archive.
  • A failed review leaves the spec active — it does not get deleted or silently re-dispatched.
  • Backprop may update specs/​docs but must never change product intent on its own.
  • Generated files under factory/​prompts/, factory/​runs/, and factory/​reviews/ are artifacts and audit trail — read them, don't treat them as source of truth. The spec is the source of truth.

Working with subagents

When isolation helps, hand stages to dedicated subagents instead of doing everything in one context:

  • a spec-implementer to write the code for one active spec,
  • a spec-reviewer (context-isolated) to judge the diff,
  • a spec-backpropagator to fold learnings back into specs/​docs.

Use one agent when work is sequential, touches the same files, or is high-risk. Fan out to multiple only when specs are independent or review should stay context-isolated.

More skills from juliusbrussee

caveman-help logo
juliusbrussee/caveman

caveman-help

Quick-reference card for caveman modes, skills, and commands with one-shot display.

109.9K 379.4K
View
cavecrew logo
juliusbrussee/caveman

cavecrew

Delegate code tasks to compressed subagents that shrink context by ~60% per delegation.

109.9K 335.7K
View
caveman-stats logo
juliusbrussee/caveman

caveman-stats

Real token usage and estimated savings metrics from your Claude Code session log.

109.9K 334.9K
View
compress logo
juliusbrussee/caveman

compress

Compress natural language memory files into caveman-speak to reduce input tokens.

109.9K 46.9K
View
caveman logo
juliusbrussee/skills

caveman

Ultra-compressed communication mode. Cuts token usage ~75% by speaking like caveman while keeping full technical accuracy. Supports intensity levels: lite, full (default), ultra, wenyan-lite, wenyan-full, wenyan-ultra. Use when user says "caveman mode", "talk like caveman", "use caveman", "less tokens", "be brief", or invokes /caveman. Also auto-triggers when token efficiency is requested.

160 3.5K
View
caveman logo
juliusbrussee/cavekit

caveman

caveman

1.1K 2.8K
View
build logo
juliusbrussee/cavekit

build

build

1.1K 2.7K
View
spec logo
juliusbrussee/cavekit

spec

spec

1.1K 2.7K
View
check logo
juliusbrussee/cavekit

check

check

1.1K 2.7K
View
backprop logo
juliusbrussee/cavekit

backprop

backprop

1.1K 2.6K
View
grill-me logo
juliusbrussee/skills

grill-me

Calibrated grilling session for stress-testing a plan, design, idea, or decision. First assesses the user's topic knowledge, confidence, and desired pressure level, then asks one question at a time with recommended answers. Use when user says "grill me", "stress-test this", "challenge my plan", "interview me", or wants a plan probed without being overwhelmed.

160 2.6K
View
junior-to-senior logo
juliusbrussee/skills

junior-to-senior

Adversarial senior-engineer review for agent-generated plans, designs, and architectures. Treats the current output as junior work, constructs a senior reviewer whose domain expertise comes from live codebase research plus web research of current best practices, diagnoses altitude failures (too vague or too granular), then rewrites the plan into a scoped, state-of-the-art version. Use when the user says "junior to senior", "senior review", "review this like a staff engineer", when a plan feels hand-wavy or lost in details, or before committing to any agent-written plan.

160 2.5K
View

Popular AI tools

Kaiber logo
Video

Kaiber

Generate, edit, and beat-sync AI video with leading models in one workspace.

Paid
View
Vimcal logo
Productivity

Vimcal

The world's fastest calendar for remote work

Free
View

Transform Your Design with AI Designer by ImgCreator.ai

Freemium
View
Akool AI logo
Content & writing

Akool AI

Revolutionizing Video Production with AI-Powered Creativity

Paid
View

Extend an image past the frame and let AI fill the new aspect ratio.

Freemium
View
StarByFace logo
Security

StarByFace

Discover your celebrity doppelgänger with StarByFace!

Free
View
C

ChainClarity explains 700+ crypto whitepapers in plain English, with layered summaries, comparisons, research tools, alerts, and a $4.99 Pro plan.

Freemium
View
Opus Clip logo
Coding & apps

Opus Clip

Opus.ai: Revolutionize Your Web Experience

Free
View