mcpField
Y
youtube-ingest

youtube-ingest

github.com/gkwa生产力071 次安装2 天前更新
代码仓库

关于 youtube-ingest

youtube-ingest 是将 YouTube 链接整理为 Obsidian Vault 笔记的工作流技能。它收集视频信息,直接构造 YouTube 缩略图链接,并生成文件名后写入和提交笔记。

主要功能

  1. 01获取视频标题和频道信息
  2. 02根据视频 ID 构造缩略图链接
  3. 03生成适合 Vault 的文件名
  4. 04写入结构化 Obsidian 笔记
  5. 05暂存并提交笔记

适用场景

  1. 01将 YouTube 视频保存为 Vault 笔记
  2. 02为笔记添加主题和缩略图信息
  3. 03提交新建的视频笔记

安装

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

$npx skills add https://github.com/gkwa/volcanicviper --skill youtube-ingest

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

附带文件tile.json

详细介绍

YouTube 摄取工作流

给定一个 YouTube URL(例如 https://youtu.be/0EHFgu7V7N4),按顺序执行以下步骤。 沿用前一步的输出——除非某一步失败,否则不要在步骤之间询问用户。

第 1 步:获取视频元数据

运行 yt-dlp 获取视频标题:

uvx yt-dlp --get-title "<youtube_url>"

从输出中提取:

  • 视频标题

还要抓取页面以识别频道名称,并用一句话概述主题。 使用 WebFetch 访问规范的 YouTube 观看页面 URL,并提示其提供标题、频道和主题。

第 2 步:直接获取缩略图 URL

YouTube 已在稳定的 URL 上托管缩略图,因此此处不要运行 social-to-imgur 技能。

根据视频 ID 构建 URL:https://i.ytimg.com/vi/<VIDEO_ID>/maxresdefault.jpg

将其同时用于 pic: 和主图。

对于 YouTube,Imgur 往返没有任何额外价值,而且会遇到出口 IP 429 错误。Instagram 等 CDN URL 会过期的平台仍需要上传。

第 3 步:生成知识库文件名

将视频标题转换为适合知识库的文件名:

  • 全部使用小写
  • 单词之间用空格分隔(不使用连字符或下划线)
  • 去掉特殊字符(竖线、冒号、斜杠等)
  • 仅在结果仍然具有描述性时,才去掉没有实际意义的填充词(例如 “how to”、“a”、“the”)

示例:“How To Make Dumpling Wrappers From Scratch | KitchenAid Pasta Attachment” 转换为:dumpling wrappers from scratch kitchenaid pasta attachment.md

第 4 步:写入知识库笔记

按照以下结构将笔记写入 /Users/mtm/Documents/Obsidian Vault/<filename>.md:

<youtube_url>

![hero](https://i.ytimg.com/vi/<VIDEO_ID>/maxresdefault.jpg)

除非用户提出要求,否则不需要 frontmatter。

第 5 步:提交

暂存并提交新文件:

git add "<filename>.md"
git commit -m "Add <short topic> note with YouTube link and hero image"

每条 git 命令都要单独作为一次 Bash 调用运行(不要用 && 串联)。

最终报告

完成所有步骤后,报告:

  • 知识库笔记文件名
  • i.ytimg.com 缩略图 URL
  • 原始 YouTube URL

评论

支持 Markdown