Overcast frame grid
Video OSINT agent: senses + OSINT reach for any agent.
npx -y skills add kdr/overcast --skill overcast-frame-gridAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 4 stars4 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Triage a whole clip in one VLM call — tile sampled frames into a labeled contact sheet, ask which cells show the target, then zoom in.
SKILL.md
2.8 KB, as published. Nobody here has run it
overcast-frame-grid
Use this skill to find roughly WHERE in a clip something appears with a single
vision call, before spending per-frame calls. It's the "grid trick" from
temporal-search research (frames tiled into one image; Set-of-Mark numbering over
time). Pairs with overcast-pinpoint for the frame-precise follow-up. Use the
broad overcast skill and overcast/reference/verbs.md for exact flags.
Workflow
overcast doctor --json
overcast case init --json
overcast grid ./clip.mp4 --count 16 --json # -> media.grid: payload.montage + payload.cells + payload.cols
overcast see <montage-path> --prompt "Which numbered cells show <X>? Reply with cell numbers and why." --json
- If the grid record's
payload.labeledisfalse(this ffmpeg build has nodrawtext), tellseeit's a<cols>-column grid numbered left-to-right, top-to-bottom (colsis in the record), so it can reference cells by position. - Only the first
countcells hold frames; the last row may be blank padding (thosepayload.cells[].atarenull), so haveseepick from 1..countand ignore blank tiles. - Always map the chosen cell number back through
payload.cells[n].atto get the real timestamp — never use a time the model typed out.
Zoom in on the winning region (narrow the window, or hand the timestamp to
overcast-pinpoint):
overcast grid ./clip.mp4 --start <a> --end <b> --count 16 --json # finer sheet around the hit
overcast see frame://<watch-record>@<t> --prompt "Is <X> here? yes/no + detail" --json
overcast note "<X> first visible" --ref <record> --at <t1-t2> --json
overcast brief --export ./grid-triage.md --json
Use --at "s1,s2,s3" instead of --count when you already have candidate
timestamps to compare side by side; --start/--end to focus a window; --cols
/ --width to shape the sheet. Add --view (--no-open in a headless run) to
also write a clickable HTML board — numbered, timestamped cells that seek the
source clip — for eyeballing the sheet by hand; the montage PNG stays the input
you hand to see.
Output
The cell(s) that matched, the timestamp each maps to (via payload.cells), and
the grid record.id. Treat grid hits as coarse (one frame per cell) — confirm
the exact moment by see-ing that frame before citing it as evidence.
Caveats
One contact sheet samples sparsely, so a brief event between cells can be missed —
raise --count or re-grid a tighter --start/--end. The montage is a still, so
motion/audio cues are gone; use watch/listen when those matter. Video can be
local or a URL, but the see frame:// zoom-in step needs it local.