agentleFS
swyxioswyxio/skills/youtube-publish/SKILL.md

youtube-publish

Skill194 starsChanged 8 months agoMITView on GitHub

This skill should be used when the user asks to "upload videos to YouTube", "publish videos on YouTube", "set YouTube titles and descriptions", "add timestamps to YouTube videos", or needs to edit video metadata, assign playlists, and publish in YouTube Studio.

2 other projects use a version of this, 1 of them edited.

Adopted by

Most recently taken up by

The file

We split this skill into the rules it gives an agent

6 rules. About 0 are common, 4 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈4

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use this format based on content type (determined from frame extraction or meeting name):

    line 25
  2. Distinctive:

    Keep titles under 100 characters.

    line 34
  3. Very specific:

    Use frame extraction data (from the zoom-download skill) to identify natural section breaks:

    line 56
  4. Distinctive:

    When unclear, check frame extractions for arxiv links or paper titles → Paper Club

    line 77
  5. Distinctive:

    Wrong channel: If you see unfamiliar videos in Content, you're on the wrong channel.

    line 104
  6. Very specific:

    Duplicate uploads: Check the Content list for videos with the same duration/date before uploading.

    line 105

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

YouTube Video Publishing & Metadata

Overview

Upload video files to YouTube Studio, set titles, descriptions, timestamps, playlists, and publish.

Step-by-Step Workflow

1. Upload Videos

  • Navigate to YouTube Studio → Content → click Create → Upload videos
  • Browser limitation: File inputs cannot be set programmatically. The user must manually select files in the file picker dialog.
  • Upload all files, wait for processing to complete (YouTube shows a progress indicator)

2. Set Title

Use this format based on content type (determined from frame extraction or meeting name):

Content TypeTitle FormatExample
Weekly Jam (demo)[Topic/Demo]: AI in Action [D Mon YYYY]SpaceMolt - AI Agents in Multiplayer Space Games: AI in Action 7 Feb 2026
Weekly Jam (talk)[Topic]: AI in Action [D Mon YYYY]Recursive Language Models & Reasoning Trees: AI in Action 31 Jan 2026
Paper Club[Paper Short Name] Paper Reading: AI in Action [D Mon YYYY]RL via Self-Distillation (SDPO) Paper Reading: AI in Action 12 Feb 2026
Guest session[Topic]: [Guest] and swyx [D Mon YYYY]—

Keep titles under 100 characters. Topic first for discoverability; series name and date at the end.

3. Set Description

Template:

Latent Space [Series Name] - [D Mon YYYY]

[Presenter name] [presents/demos/discusses] [brief 1-2 sentence description of content].

[Optional: Paper link, e.g., "Paper: https://arxiv.org/abs/XXXX.XXXXX"]

Timestamps:
[HH:MM:SS] - [Section description]
[HH:MM:SS] - [Section description]
...

Participants: [names visible in gallery view]

Join the Latent Space community: https://latent.space

Generating Timestamps

Use frame extraction data (from the zoom-download skill) to identify natural section breaks:

  • Slide changes = new topic or section
  • Demo start/end = transition points
  • Q&A segments = usually at the end
  • Paper sections (for Paper Club) = introduction, method, results, discussion

Format as MM:SS for videos under 1 hour, H:MM:SS for longer. YouTube auto-links timestamps in descriptions.

Aim for 5-10 timestamps per video. Each entry should represent a meaningful shift in content.

4. Set Playlist

On the Details page, under Playlists → click Select:

Content TypePlaylist
AI in Action Weekly Jam (demos, presentations, talks)AI in Action
Paper readings / Paper Club sessionsPaper Club

How to tell them apart:

  • Zoom meeting name "AI in Action Weekly Jam!" → AI in Action playlist
  • Meeting names like "[Person] and swyx" with arxiv papers on screen → Paper Club playlist
  • When unclear, check frame extractions for arxiv links or paper titles → Paper Club

5. Other Settings

  • Audience: "No, it's not made for kids" (usually already default)
  • Visibility: Unlisted
  • Publish immediately — do NOT leave as Draft

6. YouTube Studio Navigation Flow

For each video:

Details → (title, description, playlist) → Next →
Video Elements → Next →
Checks → (wait for checks to pass) → Next →
Visibility → (select Unlisted) → Save/Publish

Repeat for each video. Always publish right away.

7. Verify

After publishing, confirm:

  • Video URL is accessible (shown on the Details page under "Video link")
  • Title, description, and playlist are correct
  • Status shows "Unlisted" (not "Draft" or "Private")

Troubleshooting

  • "Processing…" stuck: YouTube processing can take 5-30 minutes for long videos. Wait and refresh.
  • Checks show warnings: Copyright or other warnings may appear. For original Zoom recordings these are usually false positives — proceed unless it's a hard block.
  • Wrong channel: If you see unfamiliar videos in Content, you're on the wrong channel. Switch accounts via the avatar menu.
  • Duplicate uploads: Check the Content list for videos with the same duration/date before uploading. The _gvo_ filename suffix indicates a gallery-view-only duplicate that should not be uploaded.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.