← 返回 Skills 市场
hbmartin

podcast-intel

作者 Harold Martin · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ 安全检测通过
111
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install hbmartin-podcast-intel
功能描述
Turn your Overcast listening history into actionable intelligence. Syncs episodes, transcripts, and chapters to SQLite, then uses LLM analysis to surface ins...
使用说明 (SKILL.md)

podcast-intel

Turns your Overcast listening history into a structured knowledge base, then surfaces insights from recent episodes and connects them to your current work and interests.

Built on three tools by Harold Martin:


One-Time Setup

1. Install the tools

uv tool install overcast-to-sqlite
uv tool install podcast-transcript-convert

2. Authenticate with Overcast

overcast-to-sqlite auth
# Logs into Overcast and saves an auth cookie to ./auth.json
# Your password is NOT saved — only the session cookie

Store auth.json somewhere stable, e.g. ~/.overcast/auth.json:

mkdir -p ~/.overcast
mv auth.json ~/.overcast/auth.json

3. Run the first full sync (takes a while the first time)

overcast-to-sqlite all -a ~/.overcast/auth.json ~/.overcast/overcast.db -v

This runs save → extend → transcripts → chapters sequentially. First run downloads XML for every subscribed feed — may take several minutes. Transcripts are saved to ~/.overcast/archive/transcripts/ by default.


Daily Sync

Run this to pull in the latest listening activity:

overcast-to-sqlite all -a ~/.overcast/auth.json ~/.overcast/overcast.db

Or for a faster update (skips feed XML re-download):

overcast-to-sqlite save -a ~/.overcast/auth.json ~/.overcast/overcast.db
overcast-to-sqlite transcripts -a ~/.overcast/auth.json ~/.overcast/overcast.db

To fetch transcripts for starred episodes only:

overcast-to-sqlite transcripts -s -a ~/.overcast/auth.json ~/.overcast/overcast.db

Suggested cron schedule: run overcast-to-sqlite all once daily, e.g. at 4am before any morning digest jobs that depend on it. Use launchd on macOS or cron on Linux.


Querying Recent Listening

Use these SQL queries against ~/.overcast/overcast.db:

Episodes played or significantly progressed in the last 24 hours

SELECT
  e.title,
  f.title AS podcast,
  e.overcastUrl,
  e.userRecommendedDate,
  e.transcriptDownloadPath,
  e.progress,
  e.played
FROM episodes e
JOIN feeds f ON e.feedId = f.overcastId
WHERE (e.played = 1 OR e.progress > 300)
  AND e.userUpdatedDate >= datetime('now', '-1 day')
ORDER BY
  e.userRecommendedDate DESC,
  e.userUpdatedDate DESC;

Starred episodes with transcripts available

SELECT
  e.title,
  f.title AS podcast,
  e.overcastUrl,
  e.userRecommendedDate,
  e.transcriptDownloadPath
FROM episodes_starred e
JOIN feeds f ON e.feedId = f.overcastId
WHERE e.transcriptDownloadPath IS NOT NULL
ORDER BY e.userRecommendedDate DESC
LIMIT 20;

Full-text search across chapter content

SELECT c.content, e.title, f.title AS podcast, c.time
FROM chapters_fts
JOIN chapters c ON chapters_fts.rowid = c.rowid
JOIN episodes e ON c.enclosureUrl = e.enclosureUrl
JOIN feeds f ON e.feedId = f.overcastId
WHERE chapters_fts MATCH 'your search term'
ORDER BY rank;

Processing Transcripts

Transcripts are stored in mixed formats (SRT, WebVTT, HTML, JSON). Use podcast-transcript-convert to normalize them to PodcastIndex JSON:

transcript2json ~/.overcast/archive/transcripts/ ~/.overcast/archive/transcripts-json/

To read a transcript as plain text for LLM analysis, parse the JSON:

python3 -c "
import json, sys
data = json.load(open(sys.argv[1]))
for seg in data.get('segments', []):
    print(seg.get('speaker', ''), seg.get('body', ''))
" ~/.overcast/archive/transcripts-json/episode.json

LLM Analysis Workflow

When asked to analyze recent listening, follow this process:

Step 1 — Query the DB for recent episodes

Run the last-24h query above using the terminal tool against ~/.overcast/overcast.db.

Step 2 — Separate starred from non-starred

Episodes with a non-null userRecommendedDate are starred. Give these deeper treatment.

Step 3 — Load and analyze transcripts

For each episode with a transcriptDownloadPath:

  1. Read the transcript file (convert if needed using transcript2json)
  2. Extract key concepts, claims, techniques, and names mentioned
  3. Note timestamps/chapters where important ideas appear

For episodes without transcripts, use the episode description from episodes_extended.description.

Step 4 — Cross-reference with user interests

Ask the user what they are currently working on and interested in, or read from context. For each episode, identify:

  • Direct connections to current projects or problems the user is solving
  • Techniques or frameworks mentioned that could be applied
  • People, papers, or tools referenced worth following up on
  • Contrarian or surprising takes worth sitting with

Step 5 — Format the output

Depth is determined by the user when invoking the skill. Default structure:

[Starred] Episode Title — Podcast Name Summary: 2-3 sentence overview of what was covered Key insight: The most actionable or interesting idea Connections: How this relates to what the user is working on Follow-up: Papers, people, tools, or questions worth pursuing

[Played] Episode Title — Podcast Name One-line summary + any standout idea worth surfacing


Listening Stats

overcast-to-sqlite stats ~/.overcast/overcast.db

Shows: total episodes played, total listening time, starred count, top podcasts by time.


Searching Your History

overcast-to-sqlite search "reinforcement learning" ~/.overcast/overcast.db
overcast-to-sqlite search "agentic" ~/.overcast/overcast.db -l 5

Searches across episode titles, feed descriptions, and chapter content (FTS5).


Database Location

Default: ~/.overcast/overcast.db Default transcript archive: ~/.overcast/archive/transcripts/ Default auth: ~/.overcast/auth.json

Override any path via CLI flags. See overcast-to-sqlite --help for full options.


Notes

  • Transcripts are only available for episodes where the podcast publisher provides them via the podcast:transcript RSS tag. Not all episodes have transcripts.
  • The extend command adds ~2MB per feed to the DB — expect a large file with many subscriptions
  • auth.json contains only a session cookie, not your password. Rotate it via overcast-to-sqlite auth
  • For starred-only transcript downloads use the -s flag on the transcripts command
  • Chapter FTS5 search is a powerful way to find where a specific topic was discussed across your entire listening history without reading full transcripts
安全使用建议
This skill appears to do what it says: sync your Overcast data into a local SQLite DB and analyze transcripts with an LLM. Before installing or running it: (1) verify you trust the overcast-to-sqlite and transcript-convert projects (links are provided) because those tools will access your Overcast account and download transcripts; (2) protect the Overcast session cookie (auth.json) — it grants access to your account — store it securely and review it before sharing; (3) be aware transcripts and episode text will be sent to whatever LLM/service the agent uses, so avoid analyzing sensitive audio unless you accept that exposure; (4) ensure the 'uv' tool and python3 are available on your system (SKILL.md uses them though manifest listed none); and (5) if you want stronger guarantees, inspect the referenced GitHub repos' code before running the installs/commands.
能力评估
Purpose & Capability
The name/description (Overcast -> SQLite -> LLM analysis) matches the instructions: it installs/uses overcast-to-sqlite, converts transcripts, and runs SQL/LLM analysis. The three third-party tools referenced are directly related to the task. Minor note: the registry metadata listed no required binaries, but the SKILL.md expects 'uv'/'uvx', overcast-to-sqlite and 'python3' utilities.
Instruction Scope
Runtime instructions explicitly read local Overcast artifacts (~/.overcast/auth.json, ~/.overcast/overcast.db, transcripts) and run conversions/queries — all within the declared purpose. The SKILL.md also says to 'read from context', which is ambiguous (could mean conversation context) and grants broad discretion. Also, the transcripts and episode text will be fed to an LLM for analysis, which may expose private content to whatever model/service the agent uses; this is expected but a privacy consideration, not incoherence.
Install Mechanism
There is no automated install spec in the registry (instruction-only), so nothing is automatically downloaded or written by the skill itself. The user-facing instructions tell you to run 'uv tool install' for the named tools; risk is proportional to those third-party tools, but the skill does not perform arbitrary remote downloads on install by itself.
Credentials
The skill requests no environment variables or external credentials in the manifest. It requires an Overcast session cookie (auth.json) and local DB/transcript files — appropriate and proportional for accessing a user's Overcast history. Note: auth.json is sensitive (session cookie) and the SKILL.md does not declare dependencies on commands it uses (uv, python3), a small documentation mismatch.
Persistence & Privilege
always is false and the skill is user-invocable. The only persistent artifact referenced is the user-saved Overcast auth.json and the local SQLite DB created/used by overcast-to-sqlite; the skill does not request system-wide configuration changes or other skills' credentials.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install hbmartin-podcast-intel
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /hbmartin-podcast-intel 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.0
Initial release – turn your Overcast podcast listening into actionable insights. - Syncs episode data, transcripts, and chapters from Overcast into a local SQLite database. - Supports daily and one-time syncs for up-to-date listening history. - Provides SQL queries and search tools to explore recent and starred episodes, transcripts, and chapters. - Includes workflow to analyze and surface insights from listened episodes tailored to your projects/interests. - Integrates supporting tools for converting and processing podcast transcripts. - Offers listening statistics and full-text search across played content.
元数据
Slug hbmartin-podcast-intel
版本 1.0.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

podcast-intel 是什么?

Turn your Overcast listening history into actionable intelligence. Syncs episodes, transcripts, and chapters to SQLite, then uses LLM analysis to surface ins... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 111 次。

如何安装 podcast-intel?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install hbmartin-podcast-intel」即可一键安装,无需额外配置。

podcast-intel 是免费的吗?

是的,podcast-intel 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

podcast-intel 支持哪些平台?

podcast-intel 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 podcast-intel?

由 Harold Martin(@hbmartin)开发并维护,当前版本 v1.0.0。

💬 留言讨论