using-object-trackinglisted
Install: claude install-skill Nagellabs/libi
# Using Object Tracking
> This skill is the ONE place for tracking + overlay-pinning. It absorbed the
> old `tracking-overlay` skill — do not look for a separate overlay skill.
> **Engine install:** If a tracking tool returns `tracking_engine_not_installed`,
> follow the libi-tracking install plan: `libi.get_install_plan`
> (`mcpId: "libi-tracking"`) → disclose ~10–20 min / ~2 GB and get the user's
> approval → `libi.install_tracking_engine` (the actual installer) →
> `libi.verify_install` until `ok:true` → retry.
> **Do NOT gate on `chromium` / `mediapipe-vision`** —
> those are the legacy MediaPipe path, not the default `yoloe+botsort` engine.
The tracker is **shot-segmented and composable**. You drive it; it reports
per-segment quality and *why* a segment failed. Never hand-guess pixel boxes.
If the overlay is **static** (same rect the whole clip — not following
anything), use `libi.add_overlay({ kind: "text" })` / `libi.add_overlay({ kind: "image" })` etc. instead;
no tracking needed.
## Deliver what the user asked — never a workaround
If the user asks for "a smiley **on her face**", the deliverable is a
face-sized emoji **on the face for the whole clip**. When tracking is imperfect
you have exactly two honest moves:
1. **Fix the track** (the repair loop below — re-anchor the bad window, switch
method, skip a genuinely-impossible range), or
2. **Tell the user** what's still imperfect and ask how they want to proceed.
You may **NOT** silently substitute a degrad