Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/pa1loh-watch
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/watch
Tools it pre-approves 3
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Bash,Read,AskUserQuestion
What's inside
- Skill name
watch- Description
- 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.
- License
- MIT
- Allowed tools
- Bash,, Read,, AskUserQuestion
- Instructions
- 116 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves some shell commands
Files (1)
- SKILL.md
SKILL.md (first lines)
# /watch (Watch Skill)
You don't have a video input; this skill gives you one. It is a thin wrapper
around the `watch-skill` CLI — all logic lives in the engine, so this skill
works identically on every harness (Claude Code, Codex, Cursor, ...).
This is a drop-in upgrade of the classic claude-video `/watch` skill:
same invocation shape, plus a persistent index (`ask` answers follow-ups
without re-processing), OCR on frames, scene-aware sampling with perceptual
dedup, local Whisper (offline by default, no API key needed), and THE LOOP
(capture -> critique -> fix -> re-capture) for iterating on your own output.
## Step 0 — Preflight (first invocation per session)
```bash
watch-skill doctor --json
```
- Exit 0 → proceed silently. Do NOT announce that setup is fine.
- Non-zero → the JSON lists each failing check with a `fix`. `doctor`
auto-bootstraps ffmpeg and yt-dlp into a managed bin dir on Windows/macOS/
Linux; re-run once after it reports fixes. Only involve the user when a
check still fails after remediation.
- If `watch-skill` itself is not on PATH: `pip install watch-skill` (or
`uv tool install watch-skill`), then re-run the doctor.
No API key is required for acquisition, transcription, OCR, indexing, or
search: transcription falls back to local faster-whisper. Visual synthesis
and verification can use the user's existing Anthropic, OpenAI, Gemini, or
OpenRouter key, or an optional local Ollama model. The agent and provider are
independent; see the `configuring-vision` skill. Cloud STT is opt-in
(`--cloud-stt`) and only ever uploads extracted mono audio — the video file
never leaves the machine.
## Step 1 — Watch
Parse the user input into source + optional question, then:
```bash
watch-skill watch "<source>" [--start T --end T] [--max-frames N] [--transcript-only]
```
- Any yt-dlp-supported site (1800+), direct media URLs, HLS/DASH manifests
(`--duration 60` bounds live streams), and local files all work.
- `--start` / `--end` (`SS`, `MM:SS`, `HH:MM:SS`) switch to dense focused
sampling of that window — use for "what happens at 2:30?" questions and for
any video over ~10 minutes when the user cares about one section.
- `--timestamps T1,T2,...` pins frames at transcript-flagged moments
("look here", "as you can see") that visual selection may miss.
- `--transcript-only` skips frames entirely (fastest; no video download when
captions exist).
- `--max-frames N` tightens the token budget (default: duration-tiered,
hard cap 100, max 2 fps).
The report prints an `Indexed: video_id ...` line, frames with `t=MM:SS`
timestamps, OCR text, and the transcript.
## Step 2 — Read the frames
Read every frame path the report lists, in a single message (parallel Read
calls), so you see them together in chronological order.
## Step 3 — Answer
Answer from frames + OCR + transcript, citing timestamps. No question →
summarize structure, key moments, notable visuals, spoken content.
## Follow-ups — use the index, not re-processing
The video is already indexed. For any follow-up question in this or a LATER
session:
```bash
watch-skill ask <video_id> "<question>" # self-healing answer + evidence
watch-skill search "<phrase>" # across every video ever watched
```
`ask` (v0.6) answers text-first with timestamped evidence, a confidence
score, and a `~N tokens saved` line. It escalates on its own when unsure
(dense re-sampling, zoom-crop re-OCR) and states plainly when the video
does not clearly show the answer — trust that refusal; do NOT invent an
answer past it. Frame paths are listed only when the engine wants you to
look yourself (or pass `--frames`); Read them then. Never re-run `watch`
for a follow-up on an already-indexed video.
If the user corrects one of your video answers, report it so the system
learns (locally):
```bash
watch-skill lessons add <video_id> "<question>" "<your wrong answer>" "<the correction>"
```
## THE LOOP — iterate on your own output
When the user asks you to fix UI/visual output and verify the fix:
```bash
watch-skill loop start "<url-or-screen:-or-file>" "<pass criteria>" [--script '<json steps>']
# ... you apply the suggested fixes ...
watch-skill loop iterate <loop_id>
```
The critique returns structured issues with timestamps and suggested fixes.
YOU change the code; the loop only observes. On pass it renders a
before/after MP4+GIF proof. `watch-skill capture "<target>"` records without
critiquing.
## Security posture
- The video file itself NEVER leaves the machine. Only extracted mono-16kHz
audio may go to a cloud STT API, and only with explicit `--cloud-stt`.
- No cookies, no logins — only public data is requested.
- API keys live in env vars / `.env`; they are never logged or echoed.
- Downloads are cached under `~/.watch-skill/cache` (LRU, size-capped).From Pa1loh/PadraoAI, MIT.
More from Pa1loh/PadraoAI
- 0.565score
video-memory
Pa1loh
The user asks about videos watched in the past or across sessions — "have we watched anything about X", "which video showed that error", "what did that…
SkillAFreshness: AClaude Code +9 - 0.565score
asking-with-evidence
Pa1loh
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"…
SkillAFreshness: AClaude Code +9 - 0.565score
configuring-vision
Pa1loh
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…
SkillAFreshness: AClaude Code +9 - 0.565score
extracting-structure
Pa1loh
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…
SkillAFreshness: AClaude Code +9 - 0.565score
learning-from-mistakes
Pa1loh
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…
SkillAFreshness: AClaude Code +9 - 0.565score
recovering-from-errors
Pa1loh
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…
SkillAFreshness: AClaude Code +9 - 0.565score
sharing-results
Pa1loh
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…
SkillAFreshness: AClaude Code +9 - 0.565score
the-loop
Pa1loh
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"…
SkillAFreshness: AClaude Code +9 - 0.555score
3dprint
Pa1loh
Assistente especializado em impressão 3D com OrcaSlicer, Creality Ender 3 V3 KE e filamentos PETG/PLA.
SkillAFreshness: AClaude Code +9 - 0.301score
aliexpress
Pa1loh
No description from the publisher yet.
SkillAFreshness: AClaude Code +9 - 0.301score
unity-gamedev
Pa1loh
No description from the publisher yet.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 15, 2026 (13 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Pa1loh/PadraoAI
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Pa1loh
- 0.565score
video-memory
Pa1loh
The user asks about videos watched in the past or across sessions — "have we watched anything about X", "which video showed that error", "what did that…
SkillAFreshness: AClaude Code +9 - 0.565score
asking-with-evidence
Pa1loh
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"…
SkillAFreshness: AClaude Code +9 - 0.565score
configuring-vision
Pa1loh
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…
SkillAFreshness: AClaude Code +9 - 0.565score
extracting-structure
Pa1loh
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…
SkillAFreshness: AClaude Code +9 - 0.565score
learning-from-mistakes
Pa1loh
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…
SkillAFreshness: AClaude Code +9 - 0.565score
recovering-from-errors
Pa1loh
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…
SkillAFreshness: AClaude Code +9
Cite this page
watch skill. Agent Mart. https://agentmart.dev/skills/pa1loh-watch (last updated 2026-10-24)