generate-titlelisted
Install: claude install-skill jperrello/C0BALT_CUT
# generate-title
One title per clip. Third-person, names the subject, promises a specific
moment, ALL CAPS, ≤7 words. Designed for the title-transition skill.
## Invoke
```
.claude/skills/generate-title/generate-title.sh <clip_transcript.json> <ingest.json> <out.txt> [title-context.json]
```
- `clip_transcript`: clip-local transcript with `words[]` and/or `segments[]`
- `ingest`: the source video's ingest.json (provides title, uploader, url —
helps name the subject when the transcript doesn't say it explicitly)
- `out`: text file with the title (single line, ALL CAPS, ≤7 words)
- `title-context` (optional): pick-segments' per-span judgment —
`{topic, rationale, title_suggestion}` — sliced out of `segments.json` by
the orchestrator. The clip-local transcript alone can't carry the
speaker's register, so a line read literally can invert the meaning (an
ironic "what he refuses to think about" titled as a sincere confession).
When present, the model reads tone from this context FIRST (Step 0:
sincere / ironic / joking / provocative) and titles the actual point, not
the surface words. Never shown to the viewer; omitting it falls back to
the old clip-only behavior.
## Output
A single-line text file. Example contents:
```
WATCH SPEED RAGE AT STREAM SNIPERS
```
## Prompt principles (enforced)
- Third person — never "I", "me", "my", "we".
- Name the subject (inferred from clip transcript + ingest.json).
- Promise ONE specific moment, behavior, or reaction — n