Drive the user's authenticated YouTube via the browser skill: channels, videos, comments + commenters, search via the InnerTube API; gated like/comment/subscribe. Use for YouTube research/automation as the user.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# YouTube — recon plan (InnerTube API)
**Internal API:** InnerTube —
`POST https://www.youtube.com/youtubei/v1/<endpoint>?key=<INNERTUBE_API_KEY>&prettyPrint=false`,
body `{ context: <INNERTUBE_CONTEXT>, ...params }`. The web app uses this for
everything.
## Config + auth (from the page)
- `INNERTUBE_API_KEY` + `INNERTUBE_CONTEXT` live in `ytcfg`. Read in-page:
```js
;() => ({
key: ytcfg.get("INNERTUBE_API_KEY"),
ctx: ytcfg.get("INNERTUBE_CONTEXT"),
})
```
- Public reads: often work with just key + context (no auth).
- Personalized / write (subscriptions, comments, like): need **SAPISIDHASH**
auth:
- `Authorization: SAPISIDHASH <ts>_<SHA1(ts + " " + SAPISID + " " + origin)>`
where SAPISID = the `SAPISID` (or `__Secure-3PAPISID`) cookie, origin =
`https://www.youtube.com`, ts = unix seconds. Compute SHA-1 in-page
(SubtleCrypto). Also send `X-Goog-AuthUser: 0`, `Origin`, cookies (auto).
In-page fetch:
```js
;async (endpoint, body) => {
const key = ytcfg.get("INNERTUBE_API_KEY")
const r = await fetch(
`/youtubei/v1/${endpoint}?key=${key}&prettyPrint=false`,
{
method: "POST",
headers: {
…
The line at the top of this page pins the label git:20260717.c271e80, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
GET https://markdownregistry.com/api/v1/artifacts/art_xdxe4ykcj4lggb7k
GET https://markdownregistry.com/api/v1/resolve?ref=agentproto/ts/youtube
GET https://markdownregistry.com/api/v1/blob/7bd735deaf3bd4c4b6199dbb1eeac597583af8843859de25ee417ce765e99163
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
agentproto/ts · packages/apps/session-steward/skill/SKILL.md · Wrap up idle agentproto agent sessions — classify them, close the safe ones, judge the ambiguous ones. Use when the…
agentproto/ts · packages/create-agentproto-app/templates/book/_claude/skills/install-agentproto-app/SKILL.md · Register this directory's agentproto app bundle with the local agentproto CLI so the daemon can find and run it…
agentproto/ts · packages/skill-pack-agentproto/src/skills/agentproto/SKILL.md · Drive and supervise agentproto, the AIP-45 host daemon that runs agent CLIs. Use when spawning sessions (claude-code…
agentproto/ts · packages/skill-pack-agentproto/src/skills/ap-apps/SKILL.md · Install and run agentproto APPs (AIP-53 bundles of agents and workflows) — app_install, app_apply/unapply to scopes…
agentproto/ts · packages/skill-pack-agentproto/src/skills/ap-cron/SKILL.md · Schedule recurring or one-shot jobs on the agentproto daemon — cron_create with command, agent, or prompt-session…
cowork-os/cowork-os · resources/skills/youtube/SKILL.md · Fetch transcripts, metadata, and captions from YouTube videos. Use when you need to summarize a video, answer questions…
hyperfx-ai/marketing-skills · skills/youtube/SKILL.md · Work with YouTube content end to end — fetch transcripts and turn them into summaries, blog posts, social content…
banodoco/astrid-agent · astrid/packs/youtube/docs/SKILL.md · YouTube pack — acquire YouTube media (audio MP3 / video MP4 via yt-dlp) and publish finished videos to YouTube via the…
acedatacloud/skills · skills/youtube/SKILL.md · Search YouTube, read your own channel and uploaded videos (stats, comments), and upload new videos via the YouTube Data…
manifoldmcp/marketing-skills · plugins/manifold-influencers/skills/youtube/SKILL.md · When the user wants to grow on YouTube organically. Holds dated, sourced findings a model would not know (how YouTube…