ingest-youtube

ingest-youtube is a skill for Claude Code, Codex from mycelium-hq/ai-brain-starter. It costs 112 tokens per session (1,969 once invoked), scanned A, original, MIT.

A connector that brings YouTube captions or transcripts into a markdown-based knowledge vault, where other tools can use them.

In plain words
What is it for?
Use it to ingest a YouTube video or recent channel uploads, including talks, podcasts, and keynotes, into the vault.
Why use it?
It makes the spoken content of videos available for searching, summaries, and knowledge-graph workflows without handling the video file itself.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Part of the ai-brain-starter plugin — 38 skills, 17 commands, 3 agents, 1 hook shipped together

Good fit Use it to ingest a YouTube video or recent channel uploads, including talks, podcasts, and keynotes, into the vault.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/mycelium-hq/ai-brain-starter/ingest-youtube
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add mycelium-hq/ai-brain-starter --skill ingest-youtube
Clone the repo
git clone --depth 1 https://github.com/mycelium-hq/ai-brain-starter

Made for: Claude Code, Codex.

Or install ai-brain-starter, the plugin that ships this one along with the rest of its 38 skills, 17 commands, 3 agents, 1 hook.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for ingest-youtube

README.md
[![agentmods](https://agentmods.dev/badge/skills/mycelium-hq/ai-brain-starter/ingest-youtube/github.svg)](https://agentmods.dev/skills/mycelium-hq/ai-brain-starter/ingest-youtube)
Your own site
<a href="https://agentmods.dev/skills/mycelium-hq/ai-brain-starter/ingest-youtube"><img src="https://agentmods.dev/badge/skills/mycelium-hq/ai-brain-starter/ingest-youtube/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for ingest-youtube

Your own site · 80×15
<a href="https://agentmods.dev/skills/mycelium-hq/ai-brain-starter/ingest-youtube"><img src="https://agentmods.dev/badge/skills/mycelium-hq/ai-brain-starter/ingest-youtube.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 112 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,969 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00112 $0.01969
Opus 5 $0.00056 $0.00984
Sonnet 5 $0.00022 $0.00394
Haiku 4.5 $0.00011 $0.00197

Measured 11d ago against content hash 5d7880e89475, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-11, from the pricing page.

Security

Grade A, and why

ingest-youtube scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 11d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (ingest.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/ingest-youtube/SKILL.md · 117 lines

How it starts

The opening of the file, as written. The whole thing — 117 lines — stays where its author put it; the contents beside it link to each section on GitHub.

ingest-youtube — YouTube-to-vault connector

{SKILL_DIR} = this skill's own folder (locally: the directory this SKILL.md lives in; a served brain substitutes the real absolute path before you read this). If a path does not resolve, name the missing file and stop — never guess another location.

Ingests YouTube transcripts into the vault as markdown the graphify pipeline can read and the rest of the AI Brain Starter substrate (decision log, session-close cascade, hooks) can act on.

Same connector pattern as ingest-github: adding a new source means a new normalizer, not a new architecture.

When to use

  • User says /ingest-youtube <url> for a single video
  • User says /ingest-youtube <channel-handle> [--days N] for a channel's recent uploads
  • User asks to capture, sync, ingest, transcribe, or pull a talk/podcast/keynote into the vault
  • User pastes a YouTube URL and asks for a transcript or summary
  • User mentions wanting a video's content available to the knowledge graph

Do NOT use for:

  • Downloading the actual video file (use yt-dlp directly with -f best)
  • Live streams (transcripts are not stable)
  • Non-YouTube sources (Vimeo, Twitch, Twitter Spaces get their own connectors)
  • One-off transcript reads where the user does not want a vault file (run yt-dlp --write-auto-sub directly and pipe to stdout)

How it works

  1. Parse the input: single URL → single-video mode. Channel handle (e.g. @channelname) → channel mode (last N days, default 14).
  2. Verify yt-dlp is installed. If not, attempt brew install yt-dlp (macOS) or pip3 install --user yt-dlp and surface the install path. Abort if neither works.
  3. For each video, call yt-dlp --list-subs <url> to enumerate available subtitles.
  4. Subtitle priority: manual subs > auto-generated > Whisper fallback. Manual subs preserve creator-provided punctuation and speaker labels; auto-gen is uppercase + no punctuation; Whisper is the floor.
  5. Download the highest-priority subtitle as VTT via yt-dlp --write-sub --sub-lang <lang> --skip-download. Default language preference: en,es (so non-English content is captured in its original language without forcing English).

Read the full file on GitHub · 117 lines

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 11d ago First seen · 117 lines · 112 tokens per session scan A 5d7880e89475

Subscribe to this mod's changes

ingest-youtube is a skill published in the GitHub repository mycelium-hq/ai-brain-starter (36 stars, last pushed 2d ago), licensed MIT. It adds 112 tokens to every session and 1,969 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

flow

Personal task and agent-session manager. CLI binary is flow (assumed on PATH) and stores metadata in /.flow/flow.db (SQLite). Use this skill when the user asks about their work, tasks, or projects in any natural phrasing — including but not limited to: "what's left", "what's remaining", "what's pending", "what do I…

Facets-cloud/flow · 316 tokens

daily-brief

Compose a morning briefing for the user by pulling today's calendar, open tasks, and relevant memory, then delivering a short prioritized summary over the primary chat channel. Use when the user asks for a daily brief, "what's on today", a standup, or sets up a scheduled morning digest.

TheSmokeDev/taskchad-os · 63 tokens

tg-slot

Free a membership slot so a Telegram account can join or create a group. Accounts have a hard ceiling on channels plus supergroups, and at the ceiling both creating and joining fail with an error that misleadingly blames the target chat. Finds the least-valuable current memberships, proposes what to leave, and retries…

tonydzi/second-brain-starter-kit · 87 tokens

claudeai-sync

Pull new and changed claude.ai web conversations into an Obsidian vault, extract artifacts as first-class notes, concept-link them, and refresh the RAG index and dashboard. Idempotent: curated notes are never overwritten. Triggers: "/claudeai-sync", "pull claude.ai", "grab new claude.ai chats".

tonydzi/second-brain-starter-kit · 74 tokens

gmail

Check, search or digest Gmail across several mailboxes over the owner's own OAuth connector, with no browser and near-zero tokens for the raw pull. Read-only by default: drafting and sending go through the outbound approval gate. Triggers: "/gmail", "check mail", "any important emails", "find the email about ".

tonydzi/second-brain-starter-kit · 69 tokens

tg-post

Publish a vetted post to one of your own Telegram channels or supergroups over the MCP connector rather than a browser, with the channel resolved strictly by id from a registry, rate-guarded and draft-first. It never posts to a chat matched by name similarity. Triggers: "/tg-post", "publish to the telegram channel".

tonydzi/second-brain-starter-kit · 70 tokens