Streaming Buddy 📺
Personal streaming assistant that learns your taste, tracks your watching habits, and suggests what to watch next.
Features
- - Search & Info: Find movies/TV shows with TMDB data
- Watch Tracking: Track what you're currently watching with progress
- Learning System: Learns your preferences from likes/dislikes/ratings
- Smart Recommendations: Personalized suggestions based on your taste
- Mood-Based Search: Find content by mood (exciting, relaxing, scary, etc.)
- Availability Check: Shows which of your services has the content
- Match Explanation: Explains why a title matches your preferences
Commands
| Command | Action |
|---|
| INLINECODE0 | Show status with all commands |
| INLINECODE1 |
Search for movies/TV shows |
|
/stream info <id> [tv\|movie] | Detailed info + availability |
|
/stream watch <id> [tv\|movie] | Start tracking a title |
|
/stream progress S01E05 | Update progress on current show |
|
/stream done [1-5] | Mark as finished + rate (auto-learns) |
|
/stream like [id] | Mark as liked → learns preferences |
|
/stream dislike [id] | Mark as disliked → learns preferences |
|
/stream suggest [service] [tv\|movie] | Personalized recommendations |
|
/stream mood <mood> | Search by mood |
|
/stream surprise | Random recommendation |
|
/stream why <id> | Explain why this matches you |
|
/stream watchlist | Show watchlist |
|
/stream watchlist add <id> | Add to watchlist |
|
/stream history | View watch history |
|
/stream profile | Show your taste profile |
|
/stream services | Manage streaming services |
|
/stream services add <name> | Add a service |
|
/stream services remove <name> | Remove a service |
Mood Options
| Mood | Genres |
|---|
| INLINECODE19 | Action, Thriller, Sci-Fi, Adventure |
| INLINECODE20 |
Comedy, Animation, Family, Documentary |
|
thoughtful | Drama, Mystery, History |
|
scary | Horror, Thriller |
|
romantic | Romance, Drama |
|
funny | Comedy, Animation |
Supported Services
- -
netflix, amazon-prime, disney-plus, INLINECODE28 - INLINECODE29 ,
wow, paramount-plus, INLINECODE32 - INLINECODE33 ,
rtl, magenta, INLINECODE36
Learning System
The skill learns your preferences from:
- 1. Ratings: When you finish with
/stream done [1-5]:
- Rating 4-5: Adds genres/themes/actors to "liked"
- Rating 1-2: Adds genres to "avoided"
- 2. Explicit Feedback:
/stream like and /stream dislike:
- Extracts genres, themes, actors, directors
- Updates preference weights
- 3. Preference Profile includes:
- Genre preferences (weighted scores)
- Liked/disliked themes
- Favorite actors & directors
- Custom mood mappings
Handler Usage
CODEBLOCK0
Data Files
All data stored in $WORKSPACE/memory/streaming-buddy/:
| File | Purpose |
|---|
| INLINECODE41 | TMDB API key, region, language |
| INLINECODE42 |
User profile metadata |
|
services.json | Active streaming services |
|
preferences.json | Learned taste preferences |
|
watching.json | Currently watching |
|
watchlist.json | Want to watch list |
|
history.json | Watched + ratings |
|
cache/*.json | API response cache (24h) |
Setup
- 1. Get TMDB API key: https://www.themoviedb.org/settings/api
- Store in
memory/streaming-buddy/config.json:
{
"tmdbApiKey": "your_api_key",
"region": "DE",
"language": "de-DE"
}
- 3. Run
/stream setup to configure services
Conversation Examples
Mood-based search:
CODEBLOCK2
Learning from feedback:
CODEBLOCK3
Explaining recommendations:
CODEBLOCK4
Language Support
- - Language detected from
config.json (language: "de-DE" or "en") - All output adapts to configured language
- Commands work in any language
Requirements
- -
jq (JSON processor) - INLINECODE55 (HTTP client)
- INLINECODE56 4.0+
- TMDB API key (free)
References
Streaming Buddy 📺
个人流媒体助手,能学习你的品味,追踪你的观看习惯,并推荐下一步看什么。
功能特性
- - 搜索与信息:使用TMDB数据查找电影/电视剧
- 观看追踪:追踪你正在观看的内容及进度
- 学习系统:通过点赞/踩/评分学习你的偏好
- 智能推荐:根据你的品味提供个性化建议
- 情绪搜索:按情绪查找内容(刺激、放松、恐怖等)
- 可用性检查:显示你的哪些服务有该内容
- 匹配解释:解释某部作品为何符合你的偏好
命令
| 命令 | 操作 |
|---|
| /stream | 显示所有命令的状态 |
| /stream search <标题> |
搜索电影/电视剧 |
| /stream info
[tv\|movie] | 详细信息 + 可用性 |
| /stream watch [tv\|movie] | 开始追踪某部作品 |
| /stream progress S01E05 | 更新当前剧集的进度 |
| /stream done [1-5] | 标记为已完成 + 评分(自动学习) |
| /stream like [ID] | 标记为喜欢 → 学习偏好 |
| /stream dislike [ID] | 标记为不喜欢 → 学习偏好 |
| /stream suggest [服务] [tv\|movie] | 个性化推荐 |
| /stream mood <情绪> | 按情绪搜索 |
| /stream surprise | 随机推荐 |
| /stream why | 解释为何匹配你 |
| /stream watchlist | 显示观看清单 |
| /stream watchlist add | 添加到观看清单 |
| /stream history | 查看观看历史 |
| /stream profile | 显示你的品味档案 |
| /stream services | 管理流媒体服务 |
| /stream services add <名称> | 添加服务 |
| /stream services remove <名称> | 移除服务 |
情绪选项
| 情绪 | 类型 |
|---|
| exciting(刺激) | 动作、惊悚、科幻、冒险 |
| relaxing(放松) |
喜剧、动画、家庭、纪录片 |
| thoughtful(深思) | 剧情、悬疑、历史 |
| scary(恐怖) | 恐怖、惊悚 |
| romantic(浪漫) | 爱情、剧情 |
| funny(搞笑) | 喜剧、动画 |
支持的服务
- - netflix、amazon-prime、disney-plus、apple-tv-plus
- youtube-premium、wow、paramount-plus、crunchyroll
- joyn、rtl、magenta、mubi
学习系统
该技能通过以下方式学习你的偏好:
- 1. 评分:当你使用 /stream done [1-5] 完成时:
- 评分4-5:将类型/主题/演员添加到喜欢
- 评分1-2:将类型添加到避免
- 2. 明确反馈:/stream like 和 /stream dislike:
- 提取类型、主题、演员、导演
- 更新偏好权重
- 3. 偏好档案包括:
- 类型偏好(加权分数)
- 喜欢/不喜欢的主题
- 最喜欢的演员和导演
- 自定义情绪映射
处理器使用
bash
核心命令
handler.sh status $WORKSPACE
handler.sh search severance $WORKSPACE
handler.sh info 95396 tv $WORKSPACE
handler.sh watch 95396 tv $WORKSPACE
handler.sh progress S01E05 $WORKSPACE
handler.sh done 5 Great show! $WORKSPACE
学习命令
handler.sh like $WORKSPACE # 喜欢当前观看内容
handler.sh like 12345 movie $WORKSPACE # 喜欢特定作品
handler.sh dislike $WORKSPACE
handler.sh why 95396 tv $WORKSPACE
handler.sh profile $WORKSPACE
推荐命令
handler.sh suggest $WORKSPACE # 所有服务,所有类型
handler.sh suggest prime movie $WORKSPACE # 仅Prime电影
handler.sh mood exciting $WORKSPACE
handler.sh mood relaxing tv $WORKSPACE
handler.sh surprise $WORKSPACE
列表命令
handler.sh watchlist list $WORKSPACE
handler.sh watchlist add 12345 tv $WORKSPACE
handler.sh history $WORKSPACE
服务管理
handler.sh services list $WORKSPACE
handler.sh services add netflix $WORKSPACE
handler.sh services remove netflix $WORKSPACE
数据文件
所有数据存储在 $WORKSPACE/memory/streaming-buddy/:
| 文件 | 用途 |
|---|
| config.json | TMDB API密钥、地区、语言 |
| profile.json |
用户档案元数据 |
| services.json | 活跃的流媒体服务 |
| preferences.json | 学习到的品味偏好 |
| watching.json | 当前正在观看 |
| watchlist.json | 想看的清单 |
| history.json | 已观看 + 评分 |
| cache/*.json | API响应缓存(24小时) |
设置
- 1. 获取TMDB API密钥:https://www.themoviedb.org/settings/api
- 存储在 memory/streaming-buddy/config.json:
json
{
tmdbApiKey: yourapikey,
region: DE,
language: de-DE
}
- 3. 运行 /stream setup 配置服务
对话示例
基于情绪的搜索:
用户:今晚我想看点刺激的
机器人:🎬 为你推荐的刺激内容:
1. Reacher S3 (Prime) ⭐8.5
2. Jack Ryan (Prime) ⭐8.1
...
从反馈中学习:
用户:/stream done 5
机器人:✅ Severance 标记为已完成(⭐5)
📚 已学习:+剧情、+悬疑、+科幻
演员:Adam Scott、Britt Lower 已保存到收藏
解释推荐理由:
用户:/stream why 95396
机器人:🎯 Severance 为何匹配你:
✓ 类型剧情(你喜欢这个,+2)
✓ 类型悬疑(你喜欢这个,+2)
✓ 主题办公室在你的偏好中
✓ 有Adam Scott(你的最爱)
类似作品:Fallout ⭐5
语言支持
- - 从 config.json 检测语言(language: de-DE 或 en)
- 所有输出根据配置的语言调整
- 命令支持任何语言
要求
- - jq(JSON处理器)
- curl(HTTP客户端)
- bash 4.0+
- TMDB API密钥(免费)
参考