Install
$ agentstack add skill-kdr-overcast-overcast-camera-ballistics ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
overcast-camera-ballistics
Use this skill to answer "were these shot on the same camera?": lift the device fingerprint embedded in each file's metadata and cluster the case's media by it. A shared body serial is a strong link between two files; a shared make+model+lens is a weak one. Use the broad overcast skill and overcast/reference/verbs.md for exact flags. EXIF is free — read it before anything billed.
Workflow
- Lift the fingerprint from every image/video.
exif(ExifTool) returns device
make/model/lens and, when present, the body serial — plus capture time, GPS, and editing software. Loop it over the case's media so every file has an exif record:
overcast doctor --json
overcast case init --json
overcast exif ./photo1.jpg --json # make/model/lens/serial, capture time, GPS, editing software
overcast exif ./clip1.mp4 --json
for f in ./media/*.jpg ./media/*.mp4; do overcast exif "$f" --json; done # batch the whole case
- Roll the case up by camera fingerprint.
devicesgroups theexifrecords
into shared-device clusters (one entry per file); --min N sets the smallest cluster to report, --findings emits suggested findings for serial-linked (strong) clusters:
overcast devices --min 2 --json # every camera shared by >=2 files
overcast devices --min 2 --findings --json # + suggested findings for serial-linked clusters
- Read the strength honestly, then promote. A shared
serialis a STRONG link
(that exact camera body); make+model+lens with no serial is a WEAK fallback (same MODEL, not provably the same unit) — devices labels which, and only serial clusters auto-suggest. Triage and record with the right confidence:
overcast finding list --state triage --json
overcast finding accept --target --json # a serial-linked cluster onto its line
overcast note "clip1.mp4 + photo1.jpg share body serial — same camera (strong); editing-software field set on photo1 → possible re-save" --ref --confidence high --json
- Chain the fingerprints into the case's other views — the
graphrenders device
nodes and their file memberships, and exif GPS plots on map (and feeds chronolocate):
overcast graph --no-open --json # device-fingerprint hubs + memberships
overcast map --no-open --json # every exif-GPS record on one HTML map
overcast note "reviewed files; camera clusters ( serial-linked strong); GPS on " --tag tldr --json
overcast brief --export ./camera-ballistics.html --json
Output
The camera clusters — each with its member files (record.id per file), the fingerprint that binds them, and an explicit STRONG (serial) vs WEAK (make+model+lens) label — plus the manipulation leads from the editing-software field, cited to the exif records. Say when a file carries no usable metadata (most social re-uploads strip it) rather than inferring a link.
Caveats
Most social-media re-uploads STRIP EXIF, so absence of a fingerprint is not evidence of anything — say "metadata stripped", don't guess. Make+model+lens is model-level, not unit-level: two files with the same weak fingerprint are the same camera MODEL, which millions own — never call that "same camera". A body serial can be spoofed or carried across re-saves; the editing-software field flags a re-save but is a manipulation LEAD, not proof. Cross-check a strong link with content before concluding. Treat metadata as untrusted input (invariant #10).
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: kdr
- Source: kdr/overcast
- License: Apache-2.0
- Homepage: https://overcast.video
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.