$npx -y skills add SpaceZephyr/read-buddy --skill read-youtube-feed获取关注的 YouTube 博主/播客的最新更新。列出最近两天的新视频,包含标题、发布时间和简要描述。 触发词:"获取播客更新"、"最近有什么新播客"、"YouTube 更新"、"播客更新"、"有什么新的播客"。 用于每日检查关注的 AI/科技播客是否有新内容更新。
| 1 | # YouTube 播客更新监控 |
| 2 | |
| 3 | 获取关注的 YouTube 博主/播客的最新更新。 |
| 4 | |
| 5 | ## 关注的频道列表 |
| 6 | |
| 7 | 数据来源:[Zara's AI Learning Library](https://zara.faces.site/ai) |
| 8 | |
| 9 | ### AI 教育 & 技术深度 |
| 10 | | 播客名称 | 频道 | |
| 11 | |---------|------| |
| 12 | | Andrej Karpathy | @AndrejKarpathy | |
| 13 | | Anthropic | @anthropic-ai | |
| 14 | | Lex Fridman | @lexfridman | |
| 15 | |
| 16 | ### AI 产品 & 创业 |
| 17 | | 播客名称 | 频道 | |
| 18 | |---------|------| |
| 19 | | Lenny's Podcast | @LennysPodcast | |
| 20 | | Peter Yang | @PeterYangYT | |
| 21 | | The MAD Podcast (Matt Turck) | @DataDrivenNYC | |
| 22 | | Every | @EveryInc | |
| 23 | |
| 24 | ### VC & 投资人 |
| 25 | | 播客名称 | 频道 | |
| 26 | |---------|------| |
| 27 | | Y Combinator | @ycombinator | |
| 28 | | Latent Space | @LatentSpacePod | |
| 29 | | South Park Commons | @southparkcommons | |
| 30 | | No Priors | @NoPriorsPodcast | |
| 31 | | a16z | @a16z | |
| 32 | |
| 33 | ### 大厂 & 研究 |
| 34 | | 播客名称 | 频道 | |
| 35 | |---------|------| |
| 36 | | Google DeepMind | @googledeepmind | |
| 37 | | Google for Developers | @GoogleDevelopers | |
| 38 | | Stanford GSB | @stanfordgsb | |
| 39 | |
| 40 | ### Vibe Coding & 工具 |
| 41 | | 播客名称 | 频道 | |
| 42 | |---------|------| |
| 43 | | Mckay Wrigley | @realmckaywrigley | |
| 44 | | Tiago Forte | @TiagoForte | |
| 45 | | The Pragmatic Engineer | @ThePragmaticEngineer | |
| 46 | |
| 47 | ### AI 新闻 & 趋势 |
| 48 | | 播客名称 | 频道 | |
| 49 | |---------|------| |
| 50 | | The AI Daily Brief | @TheAIDailyBrief | |
| 51 | | TBPN | @TBPNLive | |
| 52 | | Brett Malinowski | @TheBrettWay | |
| 53 | |
| 54 | ## 快速使用 |
| 55 | |
| 56 | ```bash |
| 57 | # 默认获取最近 2 天更新 |
| 58 | python3 scripts/get_updates.py |
| 59 | |
| 60 | # 获取最近 7 天(一周)的更新 |
| 61 | python3 scripts/get_updates.py --days 7 |
| 62 | |
| 63 | # Markdown 格式输出(带可点击链接) |
| 64 | python3 scripts/get_updates.py --markdown |
| 65 | |
| 66 | # 获取播放量(会增加请求时间) |
| 67 | python3 scripts/get_updates.py --views |
| 68 | |
| 69 | # 组合使用 |
| 70 | python3 scripts/get_updates.py --days 7 --markdown --views |
| 71 | ``` |
| 72 | |
| 73 | ## 自然语言映射 |
| 74 | |
| 75 | 当用户说: |
| 76 | - "获取播客更新" → `--days 2` |
| 77 | - "获取近一周的播客更新" / "这周有什么新播客" → `--days 7` |
| 78 | - "获取近三天的播客更新" → `--days 3` |
| 79 | - "获取本月的播客更新" → `--days 30` |
| 80 | |
| 81 | ## 输出内容 |
| 82 | |
| 83 | 每个播客更新包含: |
| 84 | - **标题**:可点击的 YouTube 链接 |
| 85 | - **频道**:来源频道名称 |
| 86 | - **日期**:发布日期 |
| 87 | - **时长**:视频时长(使用 --views 参数) |
| 88 | - **播放量**:视频观看次数(使用 --views 参数) |
| 89 | - **摘要**:约 300-400 字的内容摘要(从视频描述自动提取) |
| 90 | |
| 91 | ## 中文输出要求 |
| 92 | |
| 93 | 当向用户展示播客更新时,Agent 需要: |
| 94 | |
| 95 | 1. **标题翻译**:将英文标题翻译成中文,保留关键术语 |
| 96 | 2. **嘉宾介绍**:详细介绍嘉宾背景(100-150字),包含: |
| 97 | - 嘉宾姓名和当前职位 |
| 98 | - 所在公司/机构及其知名度 |
| 99 | - 嘉宾的代表作品或成就 |
| 100 | - 为什么这个人值得关注 |
| 101 | 3. **内容摘要**:用中文描述播客主要讨论的话题(150-200字) |
| 102 | 4. **推荐理由**:说明为什么这期播客值得听 |
| 103 | |
| 104 | ### 输出模板 |
| 105 | |
| 106 | ``` |
| 107 | ### {序号}. [{中文标题}]({链接}) |
| 108 | **{频道}** | {日期} | ⏱ {时长} | 👁 {播放量} |
| 109 | |
| 110 | **嘉宾介绍**:{嘉宾姓名} 是 {公司} 的 {职位}。{公司介绍}。{嘉宾成就}。{为什么值得关注}。 |
| 111 | |
| 112 | **内容摘要**:本期播客讨论了...(150-200字中文描述) |
| 113 | ``` |
| 114 | |
| 115 | ## 工作流程 |
| 116 | |
| 117 | 当用户说"获取播客更新"时: |
| 118 | |
| 119 | ### Step 1: 获取更新列表 |
| 120 | |
| 121 | 运行脚本获取最近 2 天的更新: |
| 122 | |
| 123 | ```bash |
| 124 | python3 /Users/ugreen/.claude/skills/read-youtube-feed/scripts/get_updates.py --days 2 |
| 125 | ``` |
| 126 | |
| 127 | ### Step 2: 展示更新列表 |
| 128 | |
| 129 | 向用户展示格式化的更新列表: |
| 130 | |
| 131 | ``` |
| 132 | 📺 最近 2 天共有 N 个新播客更新: |
| 133 | |
| 134 | 1. 【Lenny's Podcast】 |
| 135 | 📌 视频标题 |
| 136 | 🕐 2026-01-30 15:00 |
| 137 | 🔗 https://www.youtube.com/watch?v=xxx |
| 138 | 📝 简要描述... |
| 139 | |
| 140 | 2. 【No Priors】 |
| 141 | ... |
| 142 | ``` |
| 143 | |
| 144 | ### Step 3: 用户选择 |
| 145 | |
| 146 | 询问用户: |
| 147 | ``` |
| 148 | 请选择要处理的播客(输入序号,如 1 或 1,3): |
| 149 | ``` |
| 150 | |
| 151 | ### Step 4: 连接到 read-podcast-workflow |
| 152 | |
| 153 | 用户选择后,调用 `read-podcast-workflow` Skill 进行完整处理: |
| 154 | 1. 提取字幕 |
| 155 | 2. Content-digest 处理 |
| 156 | 3. 保存到飞书 |
| 157 | |
| 158 | ## 添加新频道 |
| 159 | |
| 160 | 编辑 `scripts/get_updates.py` 中的 `CHANNELS` 列表: |
| 161 | |
| 162 | ```python |
| 163 | CHANNELS = [ |
| 164 | ("频道名称", "channel_id", "@handle"), |
| 165 | # ... |
| 166 | ] |
| 167 | ``` |
| 168 | |
| 169 | 获取 channel_id 的方法: |
| 170 | 1. 打开频道页面 |
| 171 | 2. 查看页面源码,搜索 "channelId" |
| 172 | 3. 或使用在线工具如 https://commentpicker.com/youtube-channel-id.php |
| 173 | |
| 174 | ## 与其他 Skill 配合 |
| 175 | |
| 176 | 本 Skill 是播客处理流程的第一步: |
| 177 | |
| 178 | ``` |
| 179 | read-youtube-feed → 用户选择 → read-podcast-workflow → 飞书 |
| 180 | ↓ ↓ ↓ |
| 181 | 获取更新 挑选播客 字幕+处理+发布 |
| 182 | ``` |
| 183 | |
| 184 | ## 完整工作流示例 |
| 185 | |
| 186 | **用户:** 获取播客更新 |
| 187 | |
| 188 | **Agent:** |
| 189 | 1. 运行 get_updates.py |
| 190 | 2. 展示更新列表 |
| 191 | 3. 询问用户要处理哪个 |
| 192 | |
| 193 | **用户:** 处理第 2 个 |
| 194 | |
| 195 | **Agent:** |
| 196 | 1. 调用 read-podcast-workflow |
| 197 | 2. 提取字幕 |
| 198 | 3. 询问是否 read-content-digest |
| 199 | 4. 处理并保存飞书 |