mcpField
T
the-loop

the-loop

github.com/oxbshwTesting & quality533526 installsUpdated 7w ago
Repository

About the-loop

THE LOOP records a running target, evaluates it against plain-language pass criteria, and compares iterations; it observes but leaves fixes to the user. It supports UI, generated video, games or simulations, and bounded monitoring, and can produce before-and-after proof on pass.

Key features

  1. 01Evaluate recordings against pass criteria
  2. 02Replay scripted UI actions across iterations
  3. 03Diff fixed, unchanged, and new issues
  4. 04Test generated video and game behavior
  5. 05Bounded monitoring with structured event records
  6. 06Render before-and-after MP4 and GIF on pass

Use cases

  1. 01Check a checkout flow against stated criteria
  2. 02Verify fixes across repeated UI runs
  3. 03Catch transient game or simulation failures
  4. 04Monitor for a condition with a fixed check limit

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/oxbshw/watch-skill --skill the-loop

After installing, type/the-loopin Claude Code to confirm it loaded.

Details

From the project README

THE LOOP

A screenshot shows a moment; it cannot show a flow. THE LOOP records the actual running target, watches the recording, and judges it against pass criteria you state in plain language. The loop only observes — YOU apply the fixes, then iterate. On pass it renders a before/after MP4 + GIF as proof.

UI / web page / desktop window

watch-skill loop start "<url | screen: | window:<title> | file>" "<pass criteria>" [--script '<json steps>']
# ...apply the suggested fixes to the code...
watch-skill loop iterate <loop_id>
  • Pass criteria are ordinary sentences: "the checkout completes, no error toast ever appears, the total is never NaN". Negative claims ("never X") and exemplars ("a real price (like $29.00)") are both understood and enforced deterministically.
  • --script replays the same clicks/fills every iteration, so the comparison is honest.
  • Only call iterate after you actually changed something. It diffs against the previous iteration: fixed / unchanged / new.

Generated video (Manim, Remotion, ffmpeg, AI-gen)

watch-skill loop video-gen "<what the video must show>" "<render command>" --output <file>

Re-runs the generator each iteration and judges the fresh render against the spec.

Game / simulation

watch-skill loop game "<canvas-url | window:<title> | screen:>" "<pass criteria>" [--run "<launch cmd>"]

Catches the failures screenshots miss: a NaN score counter, black flicker frames, sprites that vanish mid-motion.

Watch for a condition (monitoring)

watch-skill loop monitor "<folder | url | screen: | window:<title>>" "<condition>" [--interval 10] [--max-checks 10]

Bounded — it always terminates. Events land in events.jsonl under the loop directory as structured records.

Record without judging

watch-skill capture "<target>" [--duration 10]

Capture alone never critiques; it just records, analyzes, and indexes. Use loop start when there are pass criteria.

Comments

Markdown supported