watch-skill plugin
Watch, index, ask, and iterate on video (THE LOOP). Persistent index, self-healing answers, and a local lessons store — Windows/Linux/macOS.
How to install the watch-skill plugin
Run both commands inside Claude Code. The first adds the marketplace once; the second installs the plugin.
/plugin marketplace add oxbshw/watch-skill
/plugin install watch-skill@watch-skillWhat's inside watch-skill
12 parts read from the plugin's own files.
Commands 1
Run as /watch-skill:name- /watch-skill:setup-watch-skill[--provider <anthropic|openai|gemini|openrouter|ollama> | --skip-vision]
One-shot setup for Watch Skill — installs the engine, bootstraps ffmpeg/yt-dlp, registers the MCP server in every detected AI agent (with backups), and configures the user's preferred vision provider. Run once after installing the plugin.
Skills 10
Claude loads it when the task matches- 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.
- 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.
- 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.
- learning-from-mistakes
The user corrected an answer about a video — "no, it actually says X", "that's the wrong timestamp", "you misread the error code" — or asks why a video answer was wrong. Use this to record the correction as a lesson so future answers on similar questions improve, and to show what the system has learned and saved.
- recovering-from-errors
A Watch Skill command failed, video download broke, ffmpeg or yt-dlp is missing, a provider returned an error, local vision stopped, or the user asks "why can't it watch this" or "repair my setup". Use this to diagnose and apply the engine's structured fix before retrying the original operation.
- sharing-results
The user wants to share or hand off what was found in a video — "send this analysis to my team", "make a page I can share", "export the findings", "give me something I can attach to the ticket". Use this to render a self-contained offline HTML viewer page with the frames, transcript, and every cached answer with its evidence.
- the-loop
Records and critiques visual outputs like UIs, animations, and games against plain-language pass criteria to facilitate iterative visual debugging.
- video-memory
Search and query a persistent index of video frames, OCR, and transcripts to answer questions about past video content.
- watch
Watch any video (URL, stream, or local path) via Watch Skill. Downloads, extracts scene-aware deduped frames, OCRs them, transcribes (captions first, then local Whisper — offline by default), indexes everything, and hands the result to the agent. Follow-up questions are answered from the persistent index without re-processing.
- watching-videos
Analyzes video files and URLs by extracting frames, performing OCR, and transcribing audio to create a searchable index.
MCP servers 1
Starts with the plugin- watch-skillstdio
watch-skill serve
Using watch-skill in Claude Code
Type a command in a Claude Code session:
/watch-skill:setup-watch-skill [--provider <anthropic|openai|gemini|openrouter|ollama> | --skip-vision]Skills need no command. Claude reads them when your request matches what they describe.
Update, turn off or remove
- Update the plugin (shell)
- claude plugin update watch-skill@watch-skill
- Refresh the marketplace
- /plugin marketplace update watch-skill
- Turn it off for now
- /plugin disable watch-skill@watch-skill
- Remove it
- /plugin uninstall watch-skill@watch-skill
Skills in watch-skill
- watchoxbshw/watch-skill
Watch any video (URL, stream, or local path) via Watch Skill. Downloads, extracts scene-aware deduped frames, OCRs them, transcribes (captions first, then local Whisper — offline by default), indexes everything, and hands the result to the agent. Follow-up questions are answered from the persistent index without re-processing.
577stars - asking-with-evidenceoxbshw/watch-skill
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.
577stars - configuring-visionoxbshw/watch-skill
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.
577stars - extracting-structureoxbshw/watch-skill
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.
577stars - learning-from-mistakesoxbshw/watch-skill
The user corrected an answer about a video — "no, it actually says X", "that's the wrong timestamp", "you misread the error code" — or asks why a video answer was wrong. Use this to record the correction as a lesson so future answers on similar questions improve, and to show what the system has learned and saved.
577stars - recovering-from-errorsoxbshw/watch-skill
A Watch Skill command failed, video download broke, ffmpeg or yt-dlp is missing, a provider returned an error, local vision stopped, or the user asks "why can't it watch this" or "repair my setup". Use this to diagnose and apply the engine's structured fix before retrying the original operation.
577stars - sharing-resultsoxbshw/watch-skill
The user wants to share or hand off what was found in a video — "send this analysis to my team", "make a page I can share", "export the findings", "give me something I can attach to the ticket". Use this to render a self-contained offline HTML viewer page with the frames, transcript, and every cached answer with its evidence.
577stars - the-loopoxbshw/watch-skill
Records and critiques visual outputs like UIs, animations, and games against plain-language pass criteria to facilitate iterative visual debugging.
577stars - video-memoryoxbshw/watch-skill
Search and query a persistent index of video frames, OCR, and transcripts to answer questions about past video content.
577stars - watching-videosoxbshw/watch-skill
Analyzes video files and URLs by extracting frames, performing OCR, and transcribing audio to create a searchable index.
577stars
watch-skill plugin questions
How do I install the watch-skill plugin?
In Claude Code run /plugin marketplace add oxbshw/watch-skill, then /plugin install watch-skill@watch-skill.
What does the watch-skill plugin include?
watch-skill bundles 1 command, 10 skills, MCP servers.
What commands does the watch-skill plugin add?
It adds /watch-skill:setup-watch-skill. Run them in Claude Code with the plugin prefix, for example /watch-skill:setup-watch-skill.
How do I update or remove the watch-skill plugin?
Update it with claude plugin update watch-skill@watch-skill in your shell, or from the Installed tab of /plugin. Remove it with /plugin uninstall watch-skill@watch-skill.
What license is the watch-skill plugin under?
MIT, as stated in the plugin's manifest.