A one-stop podcast processing flow from YouTube to Feishu publishing.
Two entry points
Entry A: Fetch podcast updates (recommended)
When the user says "fetch podcast updates" or "any new podcasts":
获取更新 → 展示列表 → 用户选择 → 字幕提取 → [询问] → Content-Digest → 飞书
Entry B: Directly process a link
When the user provides a YouTube link:
YouTube 链接 → 字幕提取 → [询问] → Content-Digest → 飞书
Entry A: Fetch podcast updates flow
Step A1: Fetch the update list
Run the command:
python3 /Users/ugreen/.claude/skills/read-youtube-feed/scripts/get_updates.py --days 2
Output format:
📺 最近 2 天共有 N 个新播客更新:
1. 【Lenny's Podcast】
📌 视频标题
🕐 2026-01-30 15:00
🔗 https://www.youtube.com/watch?v=xxx
📝 简要描述...
2. 【No Priors】
...
Step A2: User selection
After displaying the list, ask:
请选择要处理的播客(输入序号,如 1 或 1,3),或输入 "跳过":
After waiting for the user's selection, proceed to Step 1.
Entry B: Direct processing flow
Step 1: Extract YouTube subtitles
Run the command:
python3 /Users/ugreen/.claude/skills/read-youtube-transcript/scripts/get_transcript.py "YOUTUBE_URL"
Output: Subtitle text in Markdown format
Step 2: Ask whether to process
After subtitles are extracted successfully,you must ask the user:
字幕提取成功!是否使用 read-content-digest 处理成精华内容?
- 处理后会生成:标题 + 核心观点列表 + 精华片段
- 处理完成后自动保存到飞书「每日播客推荐」
Wait for the user's confirmation before continuing。
Step 3: Content-Digest processing
Refer to /Users/ugreen/.claude/skills/read-content-digest/SKILL.md for the complete flow.
Key format requirements (v2 — updated 2026-05-12):
Each podcast summary uses the following unified format,all fields must be filled in:
文章标题:MMDD-文章中文一句话主题(如 0512-如何搭建个人 AI OS)
嘉宾:[嘉宾名](Twitter @handle)
频道:[频道名]
日期:YYYY-MM-DD
主题:[一句话主题描述,30 字内]
播客地址:[YouTube 完整 URL]
# 核心观点
1、[观点]。[完整的逻辑阐述,包含推理过程,2-4 句话]
2、[观点]。[完整的逻辑阐述,包含推理过程,2-4 句话]
...(10-15 条)
# 精彩片段
[使用 Style B 对话式访谈格式,挑选 3-5 个最精彩的片段,保留嘉宾原话翻译]
Field descriptions:
文章标题: Used as the Feishu document title and local filename prefix, formatMMDD-中文一句话主题嘉宾: If a Twitter account can be found, include it; if not, just write the name日期: The video's publication date on YouTube, not the processing date主题: A one-sentence description that lets people decide whether to watch
Step 4: Save locally
Save location: /Users/ugreen/Documents/obsidian/每日播客/
File naming: MMDD-嘉宾名-主题关键词.md
Example:0130-Peter-Steinberger-AI编程革命.md
Step 5: Automatically save to Feishu
Run the command:
python3 /Users/ugreen/.claude/skills/feishu-wiki/scripts/save_to_wiki.py \
--file "/Users/ugreen/Documents/obsidian/每日播客/MMDD-xxx.md" \
--title "MMDD:嘉宾名 X 栏目名:一句话观点" \
--parent "TOSJwKzxTiFdiRk0aducHNBFntg"
Parent node Token: TOSJwKzxTiFdiRk0aducHNBFntg(Daily podcast recommendations)
Step 6: Return the result and ask about images
After processing is complete, show the user:
✅ 播客处理完成!
📝 本地文件:/Users/ugreen/Documents/obsidian/每日播客/MMDD-xxx.md
📤 飞书文档:https://my.feishu.cn/wiki/xxx
核心观点数:N 条
精华片段数:N 个
---
是否要将核心观点转为图片海报?(适合小红书/朋友圈分享)
Step 7: Convert to an image (optional)
If the user confirms they want to convert to an image, call markdown-to-image Skill:
- Extract a short-text version: Keep only the title + list of core points (excluding highlight clips)
- Optimize the format:
- Add emoji numbering (1️⃣ 2️⃣ 3️⃣)
- Condense each point to 1-2 sentences
- Keep the total word count within 500 words
- Use the browser MCP to operate Madopic:
- Open https://madopic.thus.chat
- Paste the optimized Markdown
- Choose a mode (Xiaohongshu 3:4 or Moments long image)
- Export PNG
- Tell the user the image has been downloaded to the downloads directory
Quick usage example
The user says:
Process this podcast https://www.youtube.com/watch?v=xxxxx
Agent executes:
- Extract subtitles ✓
- Ask the user → user confirms
- Content-Digest processing ✓
- Save locally ✓
- Save to Feishu ✓
- Return result
Error handling
| Error | Handling method |
|---|---|
| Subtitle extraction failed | Inform the user that the video may not have subtitles and ask whether to provide the text manually |
| Feishu write failed | Check permissions and prompt the user to add the app as a knowledge base collaborator |
| Network timeout | Retry once; if it still fails, inform the user |
Followed YouTube channels
Data source:Zara's AI Learning Library
| Category | Channel |
|---|---|
| AI education | Andrej Karpathy, Anthropic, Lex Fridman |
| AI products | Lenny's Podcast, Peter Yang, The MAD Podcast, Every |
| VC investment | Y Combinator, Latent Space, South Park Commons, No Priors, a16z |
| Big tech research | Google DeepMind, Google for Developers, Stanford GSB |
| Vibe Coding | Mckay Wrigley, Tiago Forte, The Pragmatic Engineer |
| AI news | The AI Daily Brief, TBPN, Brett Malinowski |
21 channels in total
Add a new channel: edit /Users/ugreen/.claude/skills/read-youtube-feed/scripts/get_updates.py
Dependent Skills
read-youtube-feed: Get creator updatesread-youtube-transcript: Subtitle extractionread-content-digest: Content processingfeishu-wiki: Feishu writemarkdown-to-image: Convert to image poster (optional)
Configuration
| Configuration item | Value |
|---|---|
| Local save path | /Users/ugreen/Documents/obsidian/每日播客/ |
| Feishu parent node | TOSJwKzxTiFdiRk0aducHNBFntg(Daily podcast recommendations) |
| Number of viewpoints | 10-15 items |
| Update check days | 2 days |