OpenClaw 原生 AI 播客产品
告别信息轰炸!让"播客龙虾"替您全网'跑腿',提供每天最想听的私人定制播客
四源并行 · Agent 编排 · Inbox 协议 · AI 生成 · 一键推送
| 问题 | 回答 |
|---|---|
| 这是什么 | 一个 OpenClaw 原生的 AI 播客系统。把多个信息来源统一收敛为多档最新鲜、最对味、直接"喂到嘴边"的有声节目,而不是把一堆冷冰冰的链接丢给用户。 |
| 为什么成立 | 因为它不是单点生成,而是完整工作流:Fetch → Inbox → Generate → Publish |
| 做到哪一步 | 已完成四源并行演示:Zotero、GitHub Trending、Financial API、Financial RSS,全部生成并成功推送。 |
一句话总结: 全网动态统一收敛,提纯为随时随地、解放双手的有声干货;紧跟热点,直击兴趣,每天把最鲜活的资讯直接"喂到嘴边"!
今天的问题不是缺信息,而是缺被组织过的信息。用户真正关心的论文、资讯、项目动态分散在不同来源里,更新节奏不一致,阅读成本高,也无法自然进入通勤、步行和健身等场景。
PodClaw 的回答很直接:不再让用户盯住十几个订阅源,而是把它们收敛为一档每天可听的节目。
- OpenClaw Agent 持续收集用户关注的信息
- 统一 Inbox 协议 将不同来源归一化
- Podcast Generator 输出音频、文稿与剧集元数据
- 其他 Skill 可继续完成推送、发布与分发
与"直接朗读网页"不同,PodClaw 输出的是被策划过的一档节目,而不是原始文本的语音化副本。
| 亮点 | 说明 |
|---|---|
| OpenClaw 原生 | 不是单点脚本,而是从一开始就按 Agent、Skill、定时编排的方式设计 |
| 一档节目替代多源切换 | 不把链接堆给用户,而是把多来源信息整理成统一节目 |
| 协议化扩展 | 新来源只需写入标准 Inbox,即可复用现有播客生成链路 |
| 多产物交付 | 同时输出 MP3、Markdown 文稿与 JSON 元数据,方便继续分发 |
| 可运行原型 | 当前已打通 Zotero/arXiv 到每日播客的完整闭环 |
为什么这件事适合 OpenClaw? 因为这不是一次性的内容生成任务,而是一条需要持续收集、按时执行、可扩展接入、可继续分发的长周期工作流。OpenClaw 在这里不是插件,而是整条产品链路的运行底座。
本次演示已完成四类内容的并行采集、AI 生成与自动推送:
| 节目 | 状态 | 大小 | 内容标签 |
|---|---|---|---|
| 01 Zotero 学术播客 | ✅ 已成功发送 | 9.8 MB | arXiv 论文、Zotero 收藏、智能重排、学术解读 |
| 02 GitHub Trending | ✅ 已成功发送 | 5.1 MB | 开源热门项目、技术趋势、社区动态 |
| 03 Financial API | ✅ 已成功发送 | 3.4 MB | A 股、美股、加密货币、实时行情 |
| 04 Financial RSS | ✅ 已成功发送 | 3.2 MB | 财经媒体聚合、AI 分类、专业解读 |
在 example/ 目录下可以试听已生成的播客节目:
| 文件 | 来源 | 日期 |
|---|---|---|
podcast-zotero-2026-03-17.mp3 |
Zotero 学术播客 | 2026-03-17 |
podcast-github-2026-03-18.mp3 |
GitHub Trending | 2026-03-18 |
podcast-financial-rss-2026-03-20.mp3 |
Financial RSS 财经播客 | 2026-03-20 |
┌─────────────────────────────────────────────────────────────────┐
│ 📥 数据采集层 │
│ │
│ ┌───────────┐ ┌───────────┐ ┌──────────────┐ ┌───────────┐ │
│ │ Zotero │ │ GitHub │ │ Financial │ │ Financial │ │
│ │ arXiv │ │ Trending │ │ API (新浪等) │ │ RSS(财联社)│ │
│ └─────┬─────┘ └─────┬─────┘ └──────┬───────┘ └─────┬─────┘ │
└────────┼──────────────┼───────────────┼───────────────┼─────────┘
└──────────────┴───────────────┴───────────────┘
│
┌─────▼─────┐
│ 统一接入 │
└─────┬─────┘
│
┌───────────────────────────────▼─────────────────────────────────┐
│ 📝 INBOX 标准化协议 │
│ 统一 Markdown 格式 · Source / Summary / Takeaway │
│ inbox/{source}/YYYY-MM-DD.md │
└───────────────────────────────┬─────────────────────────────────┘
│
┌─────▼─────┐
│ 统一生成 │
└─────┬─────┘
│
┌───────────────────────────────▼─────────────────────────────────┐
│ 🧠 AI 内容生成引擎 │
│ DeepSeek 摘要重组 → Prompt 组织 → MiniMax TTS 双主播播报 │
└───────────────────────────────┬─────────────────────────────────┘
│
┌─────▼─────┐
│ 统一交付 │
└─────┬─────┘
│
┌───────────────────────────────▼─────────────────────────────────┐
│ 📤 自动推送层 │
│ Telegram Bot / RSS / 邮件 / Webhook │
└─────────────────────────────────────────────────────────────────┘
上层是四类真实内容来源,中间是统一 Inbox 协议和 AI 生成引擎,下层是自动推送与继续分发。OpenClaw 负责把这条链路组织成可持续运行、可按时执行、可不断扩展的 Agent 工作流。
# 克隆项目
git clone <repo-url> && cd PodClaw
# 安装依赖(需要 uv 和 ffmpeg)
uv sync
# 验证安装
uv run python --version # Python 3.13+# 编辑 Zotero 配置
vim zotero-inbox-builder/config.yaml
# 编辑播客生成器配置(LLM + TTS API Key)
vim podcast-generator/config.yamluv run python daily-workflow/run.py \
--fetchers zotero,github,financial-api,financial-rss \
--date $(date +%Y-%m-%d) \
--publishers openclaw-bot# 学术论文播客
uv run python zotero-inbox-builder/main.py --date 2026-03-17
uv run python podcast-generator/main.py --date 2026-03-17 --source zotero
# GitHub 开源播客
uv run python github-inbox-builder/main.py --date 2026-03-18
uv run python podcast-generator/main.py --date 2026-03-18 --source github
# 金融实时数据播客
uv run python financial-api-inbox-builder/main.py --date 2026-03-18
uv run python podcast-generator/main.py --date 2026-03-18 --source financial-api
# 财经 RSS 播客
uv run python financial-rss-inbox-builder/main.py --date 2026-03-18
uv run python podcast-generator/main.py --date 2026-03-18 --source financial-rss| 数据源 | 类型 | 内容 | 更新频率 |
|---|---|---|---|
| Zotero / arXiv | 学术 | arXiv 论文 + Zotero 个人收藏,智能重排筛选 | 每日 |
| GitHub Trending | 开源 | 热门项目趋势、技术社区动态 | 每日 |
| Financial API | 金融 | A 股 / 美股 / 加密货币实时行情(新浪财经等) | 实时 |
| Financial RSS | 财经 | 财联社 / 华尔街见闻等媒体聚合 | 实时 |
| 产物 | 格式 | 意义 |
|---|---|---|
| 播客音频 | MP3 | 用户可直接收听,核心产品形态 |
| 博客文稿 | Markdown | 适合网页展示、二次编辑与内容复用 |
| 剧集元数据 | JSON | 适合后续自动发布、程序化分发与系统集成 |
- 研究订阅 — 每天把论文动态整理成一档研究播客
- 资讯简报 — 把多个信息源收敛成一档晨报或晚报
- 组织知识广播 — 把团队内部更新、周报和研究进展做成内部音频节目
这些场景的共同点是:用户想持续获取高价值信息,但不想持续管理信息源。
PodClaw/
├── inbox/ # 📥 采集的标准化内容
│ ├── zotero/ # 学术论文
│ ├── github/ # 开源项目
│ ├── financial-api/ # 金融市场数据
│ └── financial-rss/ # 财经新闻
│
├── output/ # 📤 生成的播客产物
│ ├── audio/ # MP3 音频
│ ├── blog/ # Markdown 文稿
│ └── episodes/ # JSON 元数据
│
├── example/ # 🎧 示例播客音频
│
├── zotero-inbox-builder/ # 🔬 学术数据源 Builder
│ ├── main.py
│ ├── lib/
│ └── config.yaml
│
├── podcast-generator/ # 🎙️ AI 播客生成器
│ ├── main.py
│ ├── src/podcast_core/
│ └── config.yaml
│
├── daily-workflow/ # ⏰ 每日工作流编排
│ └── run.py
│
├── fig/ # 🖼️ 图片资源
├── INBOX_SPEC.md # 📋 Inbox 格式规范
├── SKILL-Pipeline.md # 🚀 流水线 Skill 定义
├── pyproject.toml # 📦 Python 依赖
└── README.md # 📖 本文件
| 组件 | 技术 |
|---|---|
| 数据采集 | Python · httpx · BeautifulSoup |
| RSS 解析 | httpx · xml.etree |
| AI 摘要 | DeepSeek API |
| 语音合成 | MiniMax TTS (speech-2.5-hd-preview) · Edge TTS |
| 任务调度 | OpenClaw Cron |
| 消息推送 | Telegram Bot API |
| 依赖管理 | uv |
| 数据存储 | SQLite |
# zotero-inbox-builder/config.yaml
zotero:
user_id: "your_user_id"
api_key: "your_api_key"
source:
arxiv:
category: ["cs.CR", "cs.SE", "cs.CY"]
reranker:
top_k: 30# podcast-generator/config.yaml
llm:
api_key: "your_deepseek_api_key"
base_url: https://api.deepseek.com/v1
model: deepseek-chat
tts:
provider: minimax
minimax:
api_key: "your_minimax_api_key"
tts_model: speech-2.5-hd-preview
speaker1:
name: 南宫婉
voice_id: "Chinese (Mandarin)_Gentle_Senior"
speaker2:
name: 韩立
voice_id: "Chinese (Mandarin)_Gentleman"| 能力 | 产品价值 |
|---|---|
| Skill 化封装 | 抓取器与生成器都能被自然语言工作流直接调用 |
| 任务编排 | 先抓取后生成的日常流程可以稳定自动执行 |
| 定时运行 | 天然适合日更播客、晨报、晚报等场景 |
| 多 Agent 扩展 | 后续新增来源时,不必推翻现有生成器 |
| 产物可追踪 | 每天的 Inbox 和输出文件都可审计、复盘、重跑 |
这让 PodClaw 更像一个可演进的产品底盘,而不是一个写死输入输出关系的小工具。
- 创建
xxx-inbox-builder/目录 - 实现
main.py入口 - 实现
lib/fetcher.py采集逻辑 - 生成符合
INBOX_SPEC.md的 Markdown - 注册到
daily-workflow/run.py
编辑 podcast-generator/config.yaml:
podcast:
duration_min: 20
duration_max: 30
tts:
minimax:
speaker1:
name: "主播A"
voice_id: "xxx"
speaker2:
name: "主播B"
voice_id: "yyy"| 方向 | 扩展价值 |
|---|---|
| 新增抓取源 | 让论文、RSS、网页、代码仓库等更多来源进入同一节目链路 |
| 记忆感知 Agent | 让系统从被动订阅升级为主动发现用户真正关心的话题 |
| 自动分发层 | 让节目可以继续投递到 Bot、邮件、RSS 或站点 |
| 多频道节目 | 按角色、主题、团队拆分多条自动化节目流 |
- 时区处理 — Zotero/arXiv 使用 UTC 时间,已自动适配北京时间运行
- API 限制 — CoinGecko 免费版有速率限制,Alpha Vantage 需要 API Key
- RSS 稳定性 — 部分财经 RSS 可能变动,需要定期更新配置
- 存储空间 — 每个播客约 3-10 MB,建议定期清理旧文件
