pick-segmentslisted
Install: claude install-skill jperrello/C0BALT_CUT
# pick-segments
Claude-driven segment selection. No heuristics — Claude judges what's clip-worthy.
## Inputs
- `transcript`: path to `transcribe` output JSON
- `audio_rms` (optional): path to a per-second RMS energy JSON (computed inline if missing)
- `topics` (optional): path to a `segment-topics` output JSON. Auto-discovered as `topics.json` next to the transcript. When present, topics act as a MAP of where ideas live, not a fence: a SINGLE-cut span that straddles a topic boundary is dropped (a raw slice crossing a chapter is two half-ideas), but a MULTI-cut span may pull cuts from different topics when every cut develops the same one idea (named in `idea`). `ASSEMBLE_CROSS_TOPIC=0` restores the old hard constraint (cross-topic requires `thread:true`).
- `heatmap` (auto-discovered): YouTube most-replayed data from `ingest`. This is a weak discovery hint and tie-breaker, not a selection mandate.
- `n`: number of shorts to pick, default `5`
- `duration` (optional): target duration range, default `[20, 60]` seconds
- `out` (optional): output JSON path
## Output
```json
{
"shorts": [
{
"t0": 124.8,
"t1": 156.3,
"cuts": [[124.8, 156.3]],
"idea": "Why the bit only lands after the audience turns on him.",
"rationale": "Strong reaction shot followed by punchline — laughter at 152s.",
"title_suggestion": "When the bit finally lands",
"hook_score": 8,
"context_score": 9,
"structure_score": 8,
"overall_score": 8.5,