| name | overcast-presence-window |
| description | Find the interval a person or object is present — anchor one appearance, then sweep outward with face-match / detect until it drops off both sides. |
overcast-presence-window
Use this skill to answer "from when to when is on screen?" — a first/last
appearance interval, not a single instant. It anchors one confirmed appearance and
expands until the target stops appearing, the presence-tracking analog of a
temporal search. Use the broad overcast skill and
overcast/reference/verbs.md for exact flags.
Workflow
- Local clip + record id:
overcast doctor --json
overcast case init --json
overcast watch ./clip.mp4 --json
- Anchor one appearance (whichever fits the target):
overcast face ./clip.mp4 --match ./person.jpg --json
overcast grid ./clip.mp4 --count 16 --json
- Sweep outward from the anchor until K consecutive misses on each side:
overcast face ./clip.mp4 --match ./person.jpg --start <a> --end <b> --fps 1 --min-similarity 55 --json
overcast see frame://REC@<t> --prompt "Is <target> present? answer only yes or no" --json
- Emit the presence interval(s) and show them:
overcast note "<target> present" --ref REC --at <first-last> --confidence medium --json
overcast view REC --at <first-last> --json
overcast brief --export ./presence.md --json
Output
One or more [first-last] intervals with the per-hit citations (record.id +
media.at) that bound them, and the sample density used. If the target leaves
and returns, report each interval separately rather than one span covering the
gap.
Caveats
Sampled detections are per-frame, not continuous — presence between samples is
inferred; raise --fps to tighten boundaries at higher cost. Occlusion or an
off-camera moment splits one presence into several intervals — that's a real
result, not noise. Face similarity is 0-100. Needs the video local.