#286 by GitHub stars
Jakeschincariol/youtube-agent-skill
Eleven Claude skills that run a YouTube channel: scripts off 21 hook formulas with a scored hook, title and thumbnail linted as one pairing, an edit decision list from your transcript, a retention reader that finds where viewers actually leave, a Shorts cutter, and a virality engine. Free, MIT.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
skills/yt-audit/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
a2feb2104981 → a2feb2104981
skills/yt-chapters/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
a2feb2104981 → a2feb2104981
skills/yt-comment/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
a2feb2104981 → a2feb2104981
skills/yt-edit/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
a2feb2104981 → a2feb2104981
skills/yt-package/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
a2feb2104981 → a2feb2104981
skills/yt-plan/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
a2feb2104981 → a2feb2104981
skills/yt-retention/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
a2feb2104981 → a2feb2104981
skills/yt-script/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
a2feb2104981 → a2feb2104981
skills/yt-seo/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
a2feb2104981 → a2feb2104981
skills/yt-shorts/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
a2feb2104981 → a2feb2104981
skills/yt-viral/SKILL.md
Week of Oct 26, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
a2feb2104981 → a2feb2104981
Verified commit a2feb2104981a375ffd4f87ee04f4f5344ac43c6
git clone --filter=blob:none --no-checkout https://github.com/Jakeschincariol/youtube-agent-skill.git .hotskills/jakeschincariol-youtube-agent-skill && git -C .hotskills/jakeschincariol-youtube-agent-skill checkout --detach a2feb2104981a375ffd4f87ee04f4f5344ac43c6
# Copy each selected skill directory from .hotskills/jakeschincariol-youtube-agent-skill into .claude/skills/<skill-name>/Heat
7.4- Star growth, last 7 daysAhead of 99% of tracked repositories
- Star growth, last 24 hoursAhead of 100% of tracked repositories
- Rank movement, last 7 daysAhead of 95% of tracked repositories
- Commits, last 30 daysAhead of 0% of tracked repositories
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekAhead of 0% of tracked repositories
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
Individual skills in this repository
- yt-audit
skills/yt-audit - yt-chapters
skills/yt-chapters - yt-comment
skills/yt-comment - yt-edit
skills/yt-edit - yt-package
skills/yt-package - yt-plan
skills/yt-plan - yt-retention
skills/yt-retention - yt-script
skills/yt-script - yt-seo
skills/yt-seo - yt-shorts
skills/yt-shorts - yt-viral
skills/yt-viral
How it works
yt-audit
When your agent uses it
Audit a YouTube channel end to end - packaging, consistency, the first fifteen seconds, and what to fix first. Use for "audit my channel", "why isn't my channel growing", "review my videos", or a pasted channel URL.
What it loads into context
Frontmatter
64 tokensAlways available to the agent
SKILL.md
581 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Before you write
- What to look at, in this order
- What to hand back
- The gate
Scripts executed separately
../yt-package/title.py../yt-script/hookscore.py
Files
../../.claude-plugin/marketplace.jsonasset636 bytes../../.claude-plugin/plugin.jsonasset832 bytesSKILL.mdcore2,327 bytes../yt-package/title.pyruns4,080 bytes../yt-script/hookscore.pyruns5,703 bytes
Read SKILL.md
# yt-audit
An audit that lists twenty problems is a way of avoiding the one that matters. This ends in ONE fix.
## Before you write
1. Read `~/.claude/youtube/voice.md` if it exists. That is the user's voice profile: how they talk
on camera, the words they never use, who they are talking to, what they will not claim. If it
does not exist, ask for **three of their own videos**, read or transcribe them, infer the voice,
and write the file. A script in the wrong voice is worse than no script, because they have to
read it out loud.
2. Never invent a number, a result or a source. If a figure would strengthen it and you do not have
one, ask for it or write the line without it.
View the complete source on GitHubyt-chapters
When your agent uses it
Write YouTube chapters from a transcript, validated against YouTube's own rules so they actually render. Use for "add chapters", "timestamps", "break this video into sections".
What it loads into context
Frontmatter
50 tokensAlways available to the agent
SKILL.md
327 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- The rules, which are not optional
- Retitle every line
- The gate
Scripts executed separately
chapters.py
Files
SKILL.mdcore1,380 bytesSKILL.mdcore1,380 byteschapters.pyruns3,744 bytes
Read SKILL.md
# yt-chapters
```bash
python3 chapters.py transcript.srt --target 8
```
## The rules, which are not optional
A chapter list that breaks any of these silently does not become chapters at all - the block just
sits in the description doing nothing:
- The first entry must be **00:00**.
- There must be **at least three**.
- Each must be **at least 10 seconds** long.View the complete source on GitHubyt-comment
When your agent uses it
Draft replies to YouTube comments in the creator's voice, triaged by which ones are worth answering. Use for "reply to my comments", "handle the comment section", "someone asked X", or a pasted comment thread.
What it loads into context
Frontmatter
60 tokensAlways available to the agent
SKILL.md
552 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Before you write
- Triage first, always
- Writing the reply
- The heart and the pin
- The gate
Files
SKILL.mdcore2,304 bytes
Read SKILL.md
# yt-comment
The comment section is a retention surface, not a chore. Replies in the first few hours are what
decide whether a thread becomes a conversation other people read.
## Before you write
1. Read `~/.claude/youtube/voice.md` if it exists. That is the user's voice profile: how they talk
on camera, the words they never use, who they are talking to, what they will not claim. If it
does not exist, ask for **three of their own videos**, read or transcribe them, infer the voice,
and write the file. A script in the wrong voice is worse than no script, because they have to
read it out loud.
2. Never invent a number, a result or a source. If a figure would strengthen it and you do not have
one, ask for it or write the line without it.View the complete source on GitHubyt-edit
When your agent uses it
Turn a raw recording's transcript into an edit decision list - dead air, filler cues and retakes, with timecodes. Use for "edit this", "cut the dead space", "tighten this video", "I rambled", or any request to shorten footage from a transcript.
What it loads into context
Frontmatter
73 tokensAlways available to the agent
SKILL.md
414 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- What it finds
- What it will not do
- The gate
Scripts executed separately
deadair.py
Files
SKILL.mdcore1,639 bytesSKILL.mdcore1,639 bytesdeadair.pyruns4,244 bytes
Read SKILL.md
# yt-edit
An edit decision list from a timestamped transcript. It prints the cuts. You apply them.
```bash
python3 deadair.py transcript.srt # srt, vtt or whisper json
python3 deadair.py transcript.srt --floor 0.35 --json
```
No transcript yet? Ask for one, or produce one first - `whisper`, `faster-whisper`, or the caption
track YouTube generates on an unlisted upload all work. Do not guess at timings.
## What it finds
View the complete source on GitHubyt-package
When your agent uses it
Write and lint the title and thumbnail for a YouTube video as one pairing, checking truncation, duplication and vagueness before publish. Use for "title ideas", "what should I call this", "thumbnail text", "my CTR is bad", packaging, or any request to rename or repackage an existing video.
What it loads into context
Frontmatter
80 tokensAlways available to the agent
SKILL.md
556 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Before you write
- Rules the tool enforces, and why
- Write ten, keep two
- The gate
Scripts executed separately
title.py
Files
SKILL.mdcore2,303 bytesSKILL.mdcore2,303 bytestitle.pyruns4,080 bytes
Read SKILL.md
# yt-package
The title and the thumbnail are ONE unit. Writing them separately is why most packaging fails: the
thumbnail repeats the title, and half the click surface says the same thing twice.
```bash
python3 title.py --title "..." --thumb "AI RAN IT"
python3 title.py titles.txt # one per line, ranked
```
## Before you write
1. Read `~/.claude/youtube/voice.md` if it exists. That is the user's voice profile: how they talk
on camera, the words they never use, who they are talking to, what they will not claim. If itView the complete source on GitHubyt-plan
When your agent uses it
Plan a week or a month of YouTube uploads - what to post, when, and in what order, sized to the creator's actual capacity. Use for "plan my week", "content calendar", "what should I post", "I have no idea what to make next".
What it loads into context
Frontmatter
73 tokensAlways available to the agent
SKILL.md
527 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Before you write
- The shape of a week
- What to hand back
- The gate
Files
SKILL.mdcore2,097 bytes
Read SKILL.md
# yt-plan
A plan that does not fit the week is a list of regrets. Ask two questions before writing anything:
**how many hours do you actually have**, and **what is already half-made**.
## Before you write
1. Read `~/.claude/youtube/voice.md` if it exists. That is the user's voice profile: how they talk
on camera, the words they never use, who they are talking to, what they will not claim. If it
does not exist, ask for **three of their own videos**, read or transcribe them, infer the voice,
and write the file. A script in the wrong voice is worse than no script, because they have to
read it out loud.
2. Never invent a number, a result or a source. If a figure would strengthen it and you do not have
one, ask for it or write the line without it.View the complete source on GitHubyt-retention
When your agent uses it
Read a YouTube Studio audience-retention export and find where viewers actually leave, then say what to change. Use for "why do people stop watching", "my retention is bad", a pasted retention chart or CSV, or "fix my pacing".
What it loads into context
Frontmatter
67 tokensAlways available to the agent
SKILL.md
405 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Three different problems
- What to hand back
- The gate
Scripts executed separately
retention.py
Files
SKILL.mdcore1,696 bytesSKILL.mdcore1,696 bytesretention.pyruns4,666 bytes
Read SKILL.md
# yt-retention
The retention graph is the only honest feedback YouTube gives you. Almost nobody exports it.
```bash
python3 retention.py retention.csv --duration 600
python3 retention.py retention.csv --transcript transcript.srt
```
Getting the file: Studio -> a video -> Analytics -> Engagement -> the audience-retention chart ->
the download icon -> "Audience retention".
## Three different problems
View the complete source on GitHubyt-script
When your agent uses it
Write a YouTube video script from a raw idea - hook options off 21 formulas, scored, then the full spoken script with the retention beats marked. Use whenever the user wants a video script, a hook, an opening line, "what should I say", "write my next video", or is about to record and does not have the first fifteen seconds yet.
What it loads into context
Frontmatter
92 tokensAlways available to the agent
SKILL.md
675 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Before you write
- The shape
- What to hand back
- The gate
Scripts executed separately
hookscore.py
Files
SKILL.mdcore2,685 bytesSKILL.mdcore2,685 byteshooks.jsonasset9,894 byteshookscore.pyruns5,703 bytes
Read SKILL.md
# yt-script
One idea into a script somebody finishes.
Two tools live in this folder and both actually run. Use them. Do not eyeball the hook.
```bash
python3 hookscore.py hooks.txt # rank your hook options
python3 hookscore.py --hook "one line" # score a single one
```
## Before you write
1. Read `~/.claude/youtube/voice.md` if it exists. That is the user's voice profile: how they talkView the complete source on GitHubyt-seo
When your agent uses it
Write the description, tags and search-facing text for a YouTube video, aimed at the query a real person types. Use for "write my description", "tags", "SEO", "help this video get found", "nobody is finding this".
What it loads into context
Frontmatter
64 tokensAlways available to the agent
SKILL.md
524 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Before you write
- The description
- Tags, honestly
- The query test
- The gate
Files
SKILL.mdcore2,176 bytes
Read SKILL.md
# yt-seo
Search is a smaller lever than packaging and a bigger one than people think for evergreen videos.
For a video aimed at the subscriber feed, say so and spend the effort on `/yt-package` instead.
## Before you write
1. Read `~/.claude/youtube/voice.md` if it exists. That is the user's voice profile: how they talk
on camera, the words they never use, who they are talking to, what they will not claim. If it
does not exist, ask for **three of their own videos**, read or transcribe them, infer the voice,
and write the file. A script in the wrong voice is worse than no script, because they have to
read it out loud.
2. Never invent a number, a result or a source. If a figure would strengthen it and you do not have
one, ask for it or write the line without it.View the complete source on GitHubyt-shorts
When your agent uses it
Find the Shorts hiding inside a long video and write them, using the transcript to pick self-contained moments. Use for "cut this into shorts", "clip this", "repurpose this video", "what should I clip".
What it loads into context
Frontmatter
59 tokensAlways available to the agent
SKILL.md
363 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Picking
- Writing each one
- The gate
Scripts executed separately
../yt-script/hookscore.py
Files
../yt-script/hookscore.pyruns5,703 bytesSKILL.mdcore1,516 bytes
Read SKILL.md
# yt-shorts
A Short cut out of a long video is not a clip of the best moment. It is a moment that **survives
without the video around it**, which is a much smaller set.
## Picking
Read the transcript and find spans of 20-55 seconds where all three are true:
1. It opens on a complete thought. If the first sentence needs the previous minute, it is not a Short.
2. There is a turn in it - a claim, then something that complicates or proves it.
3. It ends on a line, not a trail-off.
Rank the candidates and show the user the top five with their timecodes and first line, so they canView the complete source on GitHubyt-viral
When your agent uses it
Find what is actually working in the user's niche on YouTube and rank it by how far each video beat its own channel, then name the formula. Use for "what's working right now", "find viral videos in my niche", "why did this blow up", competitor research, or a swipe file.
What it loads into context
Frontmatter
79 tokensAlways available to the agent
SKILL.md
424 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Collecting the input
- Reading the output
- The gate
Scripts executed separately
swipe.py
Files
../yt-script/hooks.jsonasset9,894 bytesSKILL.mdcore1,748 bytesSKILL.mdcore1,748 bytesswipe.pyruns3,573 bytes
Read SKILL.md
# yt-viral
Raw view counts rank channel size, not ideas. This ranks by **multiple over each channel's own
median**, which is the only version of the question that is about the video.
```bash
python3 swipe.py collected.json --min 2.0
```
## Collecting the input
You need at least **four videos per channel** or a median means nothing, and the tool will skip the
channel and tell you it did. Collect them however the user prefers - `yt-dlp --flat-playlist -J`
against a channel URL is the fastest, the public page works, a manual list works.View the complete source on GitHubSkills included
- yt-audit
- yt-chapters
- yt-comment
- yt-edit
- yt-package
- yt-plan
- yt-retention
- yt-script
- yt-seo
- yt-shorts
- yt-viral
Repository facts
- License
- MIT
- Created
- Sep 16, 2026
- Last pushed
- Sep 16, 2026
- Forks
- 1,457
- Open issues
- 99
- Project activity
- Active
Rank over the last 12 weeks
Now #286 · best #284 · up 568 in 30 days
- #297 on Nov 2
- #294 on Nov 3
- #293 on Nov 4
- #290 on Nov 5
- #284 on Nov 6
- #286 since Nov 7
46 earlier periods
- #906 on Sep 13
- #945 on Sep 16
- #940 on Sep 17
- #927 on Sep 18
- #900 on Sep 19
- #918 on Sep 20
- #938 on Sep 21
- #955 on Sep 22
- #946 on Sep 23
- #911 on Sep 24
- #858 on Sep 25
- #881 on Sep 26
- #901 on Sep 27
- #946 on Sep 28
- #974 on Sep 29
- #939 on Sep 30
- #874 on Oct 1
- #888 on Oct 2
- #855 on Oct 3
- #891 on Oct 4
- #905 on Oct 5
- #883 on Oct 6
- #891 on Oct 7
- #854 on Oct 8
- #745 on Oct 9
- #690 on Oct 10
- #647 on Oct 11
- #615 on Oct 12
- #586 on Oct 13
- #571 on Oct 14
- #557 on Oct 15
- #542 on Oct 16
- #532 on Oct 17
- #514 on Oct 18
- #501 on Oct 19
- #480 on Oct 20
- #465 on Oct 21
- #445 on Oct 22
- #421 on Oct 23
- #390 on Oct 24
- #405 on Oct 25
- #338 on Oct 28
- #327 on Oct 29
- #314 on Oct 30
- #306 on Oct 31
- #300 on Nov 1
Before you install
Local scriptsAutomated signals, not a guarantee
Checked Nov 2, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 6 notes
skills/yt-chapters/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/yt-edit/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/yt-package/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/yt-retention/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/yt-script/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/yt-viral/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 13 network referencesin 2 files: .claude-plugin/marketplace.json:1 .claude-plugin/plugin.json:3
- No hidden or obfuscated text
- No instruction overrides
- 9 executable scriptsin 6 files: skills/yt-script/hookscore.py:1 skills/yt-package/title.py:1 yt-chapters/chapters.py:1 and 3 more
- No access to secrets
- No requests to vote in Hot
Show all 22 signals by file
.claude-plugin/marketplace.json
- Network accessline 1
{ "$schema": "https://anthropic.com/claude-code/marketplace.schema.json", - Network accessline 2
"$schema": "https://anthropic.com/claude-code/marketplace.schema.json", - Network accessline 3
"name": "youtube-agent-skill", "description": "The YouTube agent skill pack for Claude", "owner": { "name": "Jake Schincariol", "url": "https://opusjake.ai" }, - Network accessline 4
"description": "The YouTube agent skill pack for Claude", "owner": { "name": "Jake Schincariol", "url": "https://opusjake.ai" }, "plugins": [ - Network accessline 5
"owner": { "name": "Jake Schincariol", "url": "https://opusjake.ai" }, - Network accessline 10
"source": "./", "category": "productivity", "homepage": "https://github.com/Jakeschincariol/youtube-agent-skill" - Network accessline 11
"category": "productivity", "homepage": "https://github.com/Jakeschincariol/youtube-agent-skill" } - Network accessline 12
"homepage": "https://github.com/Jakeschincariol/youtube-agent-skill"
.claude-plugin/plugin.json
- Network accessline 3
"description": "Eleven Claude skills that run a YouTube channel: scripts off 21 hook formulas with a scored hook, title and thumbnail linted as one pairing, an edit decision list from your transcript, a retention reader that finds the exact - Network accessline 4
"version": "1.0.0", "author": { "name": "Jake Schincariol", "url": "https://opusjake.ai" }, "homepage": "https://github.com/Jakeschincariol/youtube-agent-skill", - Network accessline 5
"author": { "name": "Jake Schincariol", "url": "https://opusjake.ai" }, - Network accessline 6
"homepage": "https://github.com/Jakeschincariol/youtube-agent-skill", - Network accessline 7
"repository": "https://github.com/Jakeschincariol/youtube-agent-skill",
skills/yt-chapters/chapters.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/yt-edit/deadair.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/yt-package/title.py
skills/yt-retention/retention.py
- Executable scriptline 1
#!/usr/bin/env python3
skills/yt-script/hookscore.py
skills/yt-viral/swipe.py
- Executable scriptline 1
#!/usr/bin/env python3
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Signal confidence: 22 facts
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:1High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:2High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:3High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:4High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:5High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:10High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:11High confidence
- Network access in code of the plugin configuration.claude-plugin/marketplace.json:12High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:3High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:4High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:5High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:6High confidence
- Network access in code of the plugin configuration.claude-plugin/plugin.json:7High confidence
- Executable script in code of a file that runsyt-chapters/chapters.py:1High confidence
- Executable script in code of a file that runsyt-edit/deadair.py:1High confidence
- Executable script in code of a file that runsskills/yt-package/title.py:1High confidence
- Executable script in code of a file that runsyt-package/title.py:1High confidence
- Executable script in code of a file that runsyt-retention/retention.py:1High confidence
- Executable script in code of a file that runsskills/yt-script/hookscore.py:1High confidence
- Executable script in code of a file that runsyt-script/hookscore.py:1High confidence
- Executable script in code of a file that runsskills/yt-script/hookscore.py:1High confidence
- Executable script in code of a file that runsyt-viral/swipe.py:1High confidence
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/yt-audit/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/yt-audit/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/yt-audit/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/yt-audit/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/yt-audit/SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.
Explore alternatives and comparisons
Add this badge to your README
It updates every night and links to this page.
[](https://hotskills.dev/skill/jakeschincariol-youtube-agent-skill/)