oxbshw/watch-skill

the-loop

The user built or changed something visual — a UI, an animation, a game, a generated video — and wants it verified, or asks "why does my UI look wrong", "check that the fix actually worked", "does the animation glitch".

Voir la source
Document Skill original

Rendu depuis le dépôt source en conservant titres, exemples, code, tableaux, liens et images.

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

bash
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)

bash
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

bash
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)

bash
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

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

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

du même dépôt

Autres Skills

Tous les Skills
oxbshw
Communauté

asking-with-evidence

The user asks a question about a video that was already watched or indexed — "what did they say about X", "what error code appears", "what happens at 2:30", "does the video show Y". Use this to answer from the persistent index with timestamped evidence and a confidence score instead of re-watching or guessing.

installations
1
GitHub Stars
380
Mis à jour
14 sept.
oxbshw
Communauté

configuring-vision

The user wants to connect an LLM or vision provider, already has an API key, asks "can I use OpenAI/Anthropic/Gemini/OpenRouter", wants local Ollama, or needs different cheap and strong models. Use this to configure provider-neutral visual understanding without tying Watch Skill to one agent or model vendor.

installations
1
GitHub Stars
380
Mis à jour
14 sept.
oxbshw
Communauté

extracting-structure

The user wants structure pulled out of a watched video — "make chapters for this video", "where does the bug appear in this recording", "turn this screen recording into a bug report", "how strong is my intro/hook". Use this for deterministic extraction from the index — chapters with timestamps, a fileable bug report with the exact frame, or a scored hook analysis.

installations
1
GitHub Stars
380
Mis à jour
14 sept.
oxbshw
Communauté

watching-videos

The user shared a video URL, a YouTube/TikTok/stream link, a local video file, a screen recording, a meeting recording, or a playlist/folder of videos — "watch this", "summarize this video", "what's in this recording". Use this to actually watch the video — download, extract frames, OCR, transcribe, and index it — instead of guessing from the title or asking the user to describe it.

installations
1
GitHub Stars
380
Mis à jour
14 sept.