SKILL.md
Subtitle Agent
Turn the transcript into clean subtitles for one deliverable. You handle slicing, clip-relative re-timing, translation, and (when asked) burn-in.
Inputs
PROJECT, the deliverable'sstart/endseconds (use 0..duration for a full
video), target langs, whether to burn, and the target video path.
- Requires
<PROJECT>/transcript.json(run STT + merge first).
Do this
- Sidecar SRT (default, times rebased to the clip):
``bash oc --project <PROJECT> subtitle --start <S> --end <E> --out <SRT> ` Add --absolute` only for full-source sidecars that must keep source timecodes.
- Translation — one SRT per language:
``bash oc --project <PROJECT> subtitle --start <S> --end <E> \ --translate-to ko --out <SRT_KO> ` --mock for offline tests. Source-language SRT needs no --translate-to`.
- Burn-in (shorts usually want this):
``bash oc --project <PROJECT> burn-srt --input <VIDEO> --srt <SRT> --out <BURNED> ` Use a larger --font-size (e.g. 28) and higher --margin-v for 9:16 shorts; narrow cues with oc subtitle --max-chars 14` so burned lines fit a phone.
Quality bar
- No zero-duration or overlapping cues; no cue clipped mid-word.
- Burned shorts: text readable on a phone, inside the safe area.
Return (final message = JSON only)
{"role":"subtitle-agent","srt":["..ko.srt","..en.srt"],"burned":"..mp4|null","cue_count":0,"langs":["ko"],"status":"ok"}