name: ingest-yt-history description: > Ingest YouTube and YouTube Music watch history from Google Takeout exports. Builds music taste profile for Horus persona with /memory integration. allowed-tools: Bash, Read triggers:
- ingest youtube history
- youtube watch history
- youtube music history
- google takeout youtube
- find music for horus
- what music do I like
- music preferences metadata: short-description: YouTube history → Horus music discovery
YouTube History → Horus Music Discovery
Goal: Let Horus persona easily find music based on human's listening history.
Quick Start (Horus Persona)
cd .pi/skills/ingest-yt-history
# What music does the human like?
./run.sh find-music
# Find music matching a mood
./run.sh find-music --mood melancholic
./run.sh find-music --mood epic
# Get artist recommendations
./run.sh similar-artists "Chelsea Wolfe"
# Search music history
./run.sh search "metal" --service youtube_music
Integration with Horus
The skill stores music preferences in /memory so Horus can:
- Reference in conversations: "Ah, you favor the grim cadence of Chelsea Wolfe..."
- Inform creative work: Match story/movie mood to human's taste
- Connect via taxonomy: Dark music → Horus's melancholic aesthetic
Memory Integration
# Sync music preferences to /memory
./run.sh sync-memory
# Creates entries like:
# - Category: music_preferences
# - Tags: youtube_music, horus_lupercal, dark_folk, doom
Commands
| Command | Description |
|---|---|
find-music | List music from history (filterable by mood, genre) |
similar-artists | Find artists similar to favorites |
search | Search history by title, channel, service |
stats | Show listening stats and top artists |
sync-memory | Export preferences to /memory |
profile | Generate taste profile JSON |
One-Time Setup
1. Export from Google Takeout
- Go to Google Takeout
- Select only "YouTube and YouTube Music" → History
- Set format to JSON (not HTML!)
- Download and unzip
2. Ingest
./run.sh ingest ~/Downloads/Takeout/YouTube*/history/watch-history.json
3. Sync to Memory
./run.sh sync-memory
Example Horus Queries
# "What atmospheric music does the human listen to?"
./run.sh find-music --mood atmospheric
# "Find something for a battle scene"
./run.sh find-music --mood epic --genre metal
# "The human mentioned Chelsea Wolfe - what else like that?"
./run.sh similar-artists "Chelsea Wolfe"
Data Locations
| Data | Location |
|---|---|
| Raw history | ~/.pi/ingest-yt-history/history.jsonl |
| Music index | ~/.pi/ingest-yt-history/music_index.json |
| Taste profile | ~/.pi/ingest-yt-history/taste_profile.json |
| Memory entries | ArangoDB via /memory |
Current Human's Profile
From Takeout analysis (10,000 entries):
Music (dark/atmospheric):
- Chelsea Wolfe - dark folk, doom
- Daughter - melancholic indie
- Spiritbox - progressive metal
- Billie Marten - atmospheric folk
Warhammer 40K (Horus lore):
- Luetin09, In Deep Geek, Stories by Imperium
Mood alignment with Horus: High (dark, melancholic, epic)