mcpField
S
solo-index-youtube

solo-index-youtube

github.com/fortunto2数据与数据库1847 次安装今天更新
代码仓库

关于 solo-index-youtube

用于将 YouTube 视频字幕编入可搜索知识库的技能。优先使用 solograph MCP 工具,也可通过 yt-dlp 下载字幕并以文本方式检索。

主要功能

  1. 01索引指定频道或所有已配置频道
  2. 02限制视频数量并进行试运行
  3. 03通过 solograph 或 Grep 搜索字幕
  4. 04提取主题、见解和可执行要点

适用场景

  1. 01为指定频道的视频建立可搜索索引
  2. 02在下载的字幕中查找相关主题
  3. 03整理视频中的重要片段和要点

MCP 相关

有 solograph MCP 工具时,使用 solograph 编制索引,并通过 source_list、source_search、source_tags 和 source_related 验证。没有 MCP 工具时,则使用 yt-dlp 和本地文本搜索。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/fortunto2/solo-factory --skill solo-index-youtube

安装后在 Claude Code 中输入/solo-index-youtube确认已加载。

详细介绍

/index-youtube

将 YouTube 视频字幕编入可搜索的知识库。根据可用工具,支持两种模式。

前提条件

检查 yt-dlp 是否可用:

which yt-dlp || echo "MISSING: install yt-dlp (brew install yt-dlp / pip install yt-dlp / pipx install yt-dlp)"

参数

解析 $ARGUMENTS 中的频道句柄或「all」:

  • 如果为空或为「all」:编入所有频道(根据配置确定,或询问用户)
  • 如果包含一个或多个句柄:仅编入这些频道(例如,GregIsenberg ycombinator)
  • 可选标志:-n <limit>(每个频道的最多视频数,默认为 10)、--dry-run(仅解析)

模式检测

检查可用的模式:

模式 1:使用 solograph MCP(推荐)

如果 MCP 工具 source_search、source_list、source_tags 可用,请使用 solograph 进行编入和搜索。

设置(如果尚未安装):

# Install solograph
pip install solograph
# or
uvx solograph

通过 solograph CLI 编入:

# Single channel
solograph-cli index-youtube -c GregIsenberg -n 10

# Multiple channels
solograph-cli index-youtube -c GregIsenberg -c ycombinator -n 10

# All channels (from channels.yaml in solograph config)
solograph-cli index-youtube -n 10

# Dry run (parse only, no DB writes)
solograph-cli index-youtube --dry-run

如果 solograph-cli 不在 PATH 中,请尝试:

uvx solograph-cli index-youtube -c <handle> -n 10

通过 MCP 验证:

  • source_list — 检查是否出现 youtube 来源
  • source_search("startup idea", source="youtube") — 测试语义搜索
  • source_tags — 查看从字幕中自动检测到的主题
  • source_related(video_id) — 按标签查找相关视频
模式 2:不使用 MCP(独立回退方案)

如果 MCP 工具 solograph 不可用,请直接使用 yt-dlp 下载字幕并进行分析。

步骤 1:下载视频列表

# Get recent video URLs from a channel
yt-dlp --flat-playlist --print url "https://www.youtube.com/@GregIsenberg/videos" | head -n 10

步骤 2:下载字幕

# Download auto-generated subtitles (no video download)
yt-dlp --write-auto-sub --sub-lang en --skip-download --sub-format vtt \
  -o "docs/youtube/%(channel)s/%(title)s.%(ext)s" \
  "<video-url>"

步骤 3:将 VTT 转换为可读文本

# Strip VTT formatting (timestamps, positioning)
sed '/^$/d; /^[0-9]/d; /^NOTE/d; /^WEBVTT/d; /-->/d' docs/youtube/channel/video.vtt | \
  awk '!seen[$0]++' > docs/youtube/channel/video.txt

步骤 4:创建索引

使用 Read 工具读取每份字幕。对于每个视频,提取:

  • 标题(来自文件名或 yt-dlp 元数据)
  • 关键主题和见解
  • 可执行的要点
  • 值得关注片段的时间戳(如果有章节标记)

将摘要索引写入 docs/youtube/index.md:

# YouTube Knowledge Index

## Channel: {channel_name}

### {video_title}
- **URL:** {url}
- **Key topics:** {topic1}, {topic2}
- **Insights:** {summary}
- **Actionable:** {takeaway}

步骤 5:搜索已编入索引的内容

字幕保存为文本文件后,使用 Grep 进行搜索:

# Search across all transcripts
grep -ri "startup idea" docs/youtube/

输出

向用户报告:

  1. 编入索引的视频数量
  2. 下载的字幕数量(与跳过的数量对比——无可用字幕)
  3. 有章节标记的视频数量
  4. 索引文件位置
  5. 如何搜索已编入索引的内容(MCP 工具或 Grep 命令)

常见问题

“MISSING: install yt-dlp”

**原因:**未安装 yt-dlp。 **解决方法:**运行 brew install yt-dlp(macOS)、pip install yt-dlp 或 pipx install yt-dlp。

跳过视频(无字幕)

**原因:**视频没有自动生成的字幕或手动字幕。 **解决方法:**这是预期情况——部分视频没有字幕。只有提供字幕的视频才能编入索引。

YouTube 速率限制

**原因:**短时间内请求过多。 **解决方法:**降低 -n 限制,在 yt-dlp 命令中添加 --sleep-interval 2,或使用 --cookies-from-browser chrome 进行身份验证访问。

未找到 solograph-cli

**原因:**未安装 solograph,或其不在 PATH 中。 **解决方法:**使用 pip install solograph 或 uvx solograph 安装。运行 which solograph-cli 进行检查。

评论

支持 Markdown