pick-mood
Background music shouldn't be random. This skill reads a clip's transcript
and picks one of the existing ./songs/<mood>/ folders to source from. The
mood list is generated live from the filesystem — add or rename a folder
under ./songs/ and the next run will offer it.
Invoke
.claude/skills/pick-mood/pick-mood.sh <clip_transcript.json> <out.txt>
input— clip-local word-timed transcript JSONout— written with a single line: the chosen mood folder name (orALL SONGSas a safe fallback)
How
- Lists subdirectories of
$SHORTS_ROOT/songs/(skipping dotfiles). - Builds a prompt with the available moods and the clip transcript.
- Calls
claude -p --output-format text. - Parser strips quoting/whitespace and validates the reply against the
live mood list. Any miss →
ALL SONGS.
Caveats
- All songs in the library are instrumental, so the mood label is judged purely on emotional/energetic fit with the clip's content — not lyrics.
- Cached by transcript mtime.