youtube-marketing
Plan, write, and publish for YouTube and YouTube Shorts.
Skill by sergebulaev
Chalk Labs
Need help deploying youtube-marketing?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/sergebulaev-youtube-marketing-baf0e0
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend, writing, marketing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 9
api.pixfaro.com· found in codeapi.publora.com· found in codeapp.publora.com· found in codecodeload.github.com· found in install commandconsole.cloud.google.com· found in codegithub.com· found in codegoogleapis.com· found in codepixfaro.com· found in codeyoutu.be· found in code
Files it touches
~/.claude/skills/youtube-marketing
What's inside
- Skill name
youtube-marketing- Description
- Plan, write, and publish for YouTube and YouTube Shorts. Use when the user wants high-CTR video titles, an SEO description with chapters and links, a first-30-seconds retention script (or a 3-second Shorts hook), a designer-ready thumbnail brief, a community-tab post or poll, or a weekly upload plan. The user supplies the video; the skills produce the title, description, hook, and thumbnail brief, then on approval upload and schedule via the Publora API.
- License
- MIT
- Instructions
- 170 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Agent Skills spec issues
- name: "youtube-marketing" does not match folder "youtube-skills"
Files (42)
- marketplace.json · .agents/plugins/
- marketplace.json · .claude-plugin/
- plugin.json · .claude-plugin/
- plugin.json · .codex-plugin/
- .codexignore
- .env.example
- dependabot.yml · .github/
- hol-plugin-scanner.yml · .github/workflows/
- verify-references.yml · .github/workflows/
- .gitignore
- AGENTS.md
- CLAUDE.md
- LICENSE
- README.md
- SECURITY.md
- SKILL.md
- hero.png · assets/
- icon.svg · assets/
- social-preview.jpg · assets/
- __init__.py · lib/
- _env.py · lib/
- approval.py · lib/
- backend_selector.py · lib/
- pixfaro_client.py · lib/
- publora_client.py · lib/
- url_parser.py · lib/
- youtube_client.py · lib/
- algorithm-heuristics.md · references/
- hook-formulas.md · references/
- thumbnail-principles.md · references/
- untrusted-content.md · references/
- voice-profile.md · references/
- voice-rules.md · references/
- requirements-lock.txt
- requirements.txt
- check_frontmatter.py · scripts/
- check_markdown_references.py · scripts/
- check_no_secrets.py · scripts/
- check_security_boundaries.py · scripts/
- check_text_encoding.py · scripts/
- check_untrusted_rule.py · scripts/
- sync_codex_marketplace.py · scripts/
SKILL.md (first lines)
# YouTube Marketing Skills
A bundle of 9 focused skills for YouTube content ops in 2026, covering both
long-form and YouTube Shorts. Each skill is single-purpose, follows the draft
then approval then publish pattern, and uses the [Publora API](https://publora.com/?utm_source=github&utm_medium=skill&utm_campaign=youtube-skills)
for uploading and scheduling the video you supply.
## When to use this bundle
- **Writing high-CTR titles** (curiosity, number, how-I, comparison) with A/B variants -> use `yt-title-optimizer`
- **Writing the description** (first-150-char hook, chapters, keywords, links) -> use `yt-description-writer`
- **Scripting the first 30 seconds for retention** (or the first 3 seconds of a Short) -> use `yt-hook-scripter`
- **Briefing a thumbnail** (text overlay, face/emotion, contrast) plus the upload flow -> use `yt-thumbnail-brief`
- **Writing a community-tab post or poll** -> use `yt-community-post-writer`
- **Planning a week of uploads** (long-form vs Shorts mix, title/thumbnail pairing) -> use `yt-content-planner`
- **Repurposing off-platform content** (a blog post, thread, or LinkedIn post) into a YouTube community post or a video brief -> use `yt-repurposer`
- **Auditing and rewriting the channel page** (banner, trailer, About, playlists, section order) to convert viewers into subscribers -> use `yt-channel-optimizer`
- **Reading your audience from the comments (who commented, themes, superfans, trending)** -> use `yt-audience-insights`
## Core pattern
Every action-taking skill follows three steps:
1. **Parse the input.** If the user gives a YouTube URL, the skill uses
`lib/url_parser.py` to extract the video id, Short id, channel, or handle.
2. **Draft the content.** The skill applies 2026 research (title and hook
formulas, CTR x retention heuristics, thumbnail principles, voice rules) and
shows the draft to the user.
3. **Wait for approval.** The user replies "publish", "yes", or suggests edits.
Only after explicit approval does the skill upload and schedule via Publora.
## Why YouTube is video-first (read this once)
YouTube is a **video-only platform**: every published post requires a single
video file, which the user supplies. The skills write the title, description,
hook script, and thumbnail brief; you bring the .mp4. On approval the upload
follows the documented Publora flow:
1. `create-post` with no scheduledTime -> creates a **draft**, returns a `postGroupId`
2. `get-upload-url` -> a pre-signed S3 URL
3. PUT your video to S3
4. `update-post/:postGroupId` -> set the scheduledTime (and any youtube settings)
A custom thumbnail is set **after** the draft exists, via `update-post` (the
thumbnail upload needs the `postGroupId`), never on `create-post`. YouTube
community-tab posts have no Publora endpoint, so `yt-community-post-writer`
always returns a copy-paste block.
## Prerequisites
**Three tiers - pick one.**
### Tier 0 - Draft only (default, no setup)
The skills work out of the box. No API keys, no signup. Every approved draft is
returned as a copy-paste block (title + description, hook script, thumbnail
brief, or community post) for you to use in YouTube Studio. Great for trying the
skills before committing to any backend.
### Reading YouTube data (orthogonal to the tiers above)
`yt-audience-insights` and the planner read comments, video and channel stats
and trending through the YouTube Data API v3, gated on `YOUTUBE_API_KEY`. That
is Google's API, not Apify, so **there is no connector path**: the sibling
bundles can be read on claude.ai through Apify's MCP server, and this one
cannot. On claude.ai, ask the user to paste titles, stats or comments and say
why. With neither key nor paste, do not estimate the numbers.
### Tier 1 - Publora auto-upload (recommended, ~2 min)
On approval, the writer skills upload and schedule the video you supply via the
[Publora API](https://publora.com/?utm_source=github&utm_medium=skill&utm_campaign=youtube-skills).
1. Sign up free: **https://app.publora.com/signup?utm_source=github&utm_medium=skill&utm_campaign=youtube-skills**
2. Connect your YouTube channel in Publora (Channels then Add Channel, Google OAuth)
3. Copy your API key from Publora's API panel
4. Drop into `.env`:
```
PUBLORA_API_KEY=sk_...
YOUTUBE_PLATFORM_ID=youtube-UC...
```
5. Run `pip install -r requirements.txt`
Why Publora: uploading to YouTube on the native Data API means a Google OAuth
flow, the resumable-upload protocol, and quota tracking. Publora does the draft,
the S3 upload, the schedule, and the metadata in a handful of REST calls. We
built on top of it so we did not have to reimplement the upload chain.
### Tier 2 - Build your own uploader (advanced)
Prefer not to SaaS it? Ask Claude Code or Codex to build a custom uploader on the
YouTube Data API. Set `YOUTUBE_SKILLS_CUSTOM_POSTER=<your command>` and the
skills invoke it on approval. Publora is the 2-minute path.
### Note on community posts
YouTube community-tab posts and polls have no Publora endpoint, and there is no
public API for them. So `yt-community-post-writer` always returns its draft as a
copy-paste block for you to post in the Community tab yourself. Videos and Shorts
upload and schedule through Publora normally.
## Voice rules (baked into every skill)
1. Em dashes (`—`) capped at about 1 per 100 words (at most one in a title or community post; `..` in a spoken line); replace the excess with a comma, colon or line break, never a period. No en dashes between clauses, no double dashes.
2. Use `..` as a soft pause in a script line when rhythm calls for it.
3. Capitalize all personal, company, and product names.
4. Specific numbers beat adjectives. "in 28 days" beats "fast".
5. Title is a promise, not a summary. Curiosity plus a concrete payoff.
6. Title and thumbnail are a pair. They never repeat the same words.
7. The first 30 seconds (or 3 on a Short) is the real algorithm. No intro.
8. Title caps at 100 chars (sweet spot 40 to 60). Description caps at 5,000, first 150 visible.
9. Avoid AI vocabulary clusters: one 2026 marker (`leverage`, `significant`, `streamline`, `foster`) in a paragraph is English, three in one paragraph reads as AI and the paragraph gets rewritten; in a one-line title any marker goes. No sincerity openers ("let me be honest", "not gonna lie").
10. Do not keyword-stuff. Natural language with the real search phrase once.
(Canonical reference: `references/voice-rules.md`. See also
`references/hook-formulas.md`, `references/algorithm-heuristics.md`, and
`references/thumbnail-principles.md`.)
## How YouTube URLs mapFrom sergebulaev/youtube-skills, MIT.
More from sergebulaev/youtube-skills
- 0.673score
yt-community-post-writer
sergebulaev
Write YouTube community-tab posts: text updates, polls, image-caption posts, and questions that drive comments and bring subscribers back between video uploads.
SkillAFreshness: A★ 69Claude Code +9 - 0.673score
yt-content-planner
sergebulaev
Build a weekly YouTube upload plan: long-form vs YouTube Shorts mix, posting cadence, per-slot title and thumbnail pairing, hook angle, community-tab posts…
SkillAFreshness: A★ 69Claude Code +9 - 0.673score
yt-description-writer
sergebulaev
Write a full YouTube video description under 5,000 characters with a first-150-character hook (the only part visible before Show more, and what shows in…
SkillAFreshness: A★ 69Claude Code +9 - 0.673score
yt-hook-scripter
sergebulaev
Script the spoken opening that decides retention: the first 30 seconds of a long-form YouTube video or the first 3 seconds of a YouTube Short.
SkillAFreshness: A★ 69Claude Code +9 - 0.673score
yt-thumbnail-brief
sergebulaev
Turn a YouTube video idea into a designer-ready thumbnail brief: focal subject, face and emotion, a text overlay of 4 words or fewer that the title does not…
SkillAFreshness: A★ 69Claude Code +9 - 0.673score
yt-title-optimizer
sergebulaev
Write high-CTR YouTube and YouTube Shorts titles under 100 characters using 2026 packaging formulas (curiosity-gap, number, how-I outcome, mistake/loss…
SkillAFreshness: A★ 69Claude Code +9 - 0.668score
yt-channel-optimizer
sergebulaev
Audit and rewrite a YouTube channel end-to-end for 2026: name and @handle, banner (2560x1440 with the 1235x338 mobile/TV safe area), profile picture, About…
SkillAFreshness: A★ 69Claude Code +9 - 0.668score
yt-audience-insights
sergebulaev
Read your YouTube audience from the comments: pull commenters and top comments on any video, surface recurring questions and themes (content ideas), repeat…
SkillAFreshness: A★ 69Claude Code +9 - 0.668score
yt-repurposer
sergebulaev
Repurpose off-platform content into a native YouTube surface.
SkillAFreshness: A★ 69Claude Code +9
Signals
- Stars
- 69
- Forks
- 17
- Open issues
- 0
- Last commit
- Oct 15, 2026 (15 days ago)
- Last release
- Oct 15, 2026 (15 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/sergebulaev/youtube-skills
- Website
- cccrafts.ai
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from sergebulaev
- 0.851score
linkedin-comment-drafter
sergebulaev
Draft a LinkedIn comment on someone else's post from its URL, or reshare (repost) it to your feed with optional commentary.
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-content-planner
sergebulaev
Generate a 7-day LinkedIn content plan from a theme, audience, and pillars.
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-engager-analytics
sergebulaev
Pull the people who liked or commented on any LinkedIn post and segment them by ICP fit (peer / aspirational / prospect / other).
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-hook-extractor
sergebulaev
Reverse-engineer the hook formula from a viral LinkedIn post URL.
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-humanizer
sergebulaev
Remove AI tells from LinkedIn posts/comments: 2026 vocabulary density, reveal bridges, staccato fragments, stacked triads, performed sincerity.
SkillAFreshness: A★ 5.1KClaude Code +9 - 0.851score
linkedin-post-writer
sergebulaev
Draft a new LinkedIn post from scratch using one of 20 2026 hook formulas (anaphora, R.I.P., time-anchor, curiosity-gap, contrarian, controlled A/B…
SkillAFreshness: A★ 5.1KClaude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get youtube-marketing running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
youtube-marketing skill. Agent Mart. https://agentmart.dev/skills/sergebulaev-youtube-marketing-baf0e0 (last updated 2026-10-24)