Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Youtube Upload

ASecurity

Publish a finished lesson MP4 from ~/Movies/lpm-lessons/<slug>/ to the lpm YouTube channel through Chrome (YouTube Studio): search-optimized title and description with chapters, tags, category, the title-card thumbnail, Public, then added to the lesson playlist. Use when the user asks to upload, publish or post a video to YouTube.

150 stars
0 votes
0 copies
0 views
Added 9/20/2026
developmentgonode

Works with

claude codeterminalclimcp

Security Analysis

A100/100

Scanned 9/20/2026

Install to Claude Code

$npx -y skills add gug007/lpm --skill youtube-upload --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Youtube Upload?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Youtube Upload
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/gug007-youtube-upload/badge)](https://www.skillsdirectory.com/skills/gug007-youtube-upload)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: youtube-upload
version: 1.1.0
argument-hint: "<lesson-slug>"
description: "Publish a finished lesson MP4 from ~/Movies/lpm-lessons/<slug>/ to the lpm YouTube channel through Chrome (YouTube Studio): search-optimized title and description with chapters, tags, category, the title-card thumbnail, Public, then added to the lesson playlist. Use when the user asks to upload, publish or post a video to YouTube."
---

Upload a lesson video to YouTube and publish it.

- run `node scripts/prepare.js <slug> <scratchpad-dir>` first: it copies the MP4 into the session scratchpad under the video title (the file name becomes the initial title in Studio), extracts the title-card thumbnail (1280x720 JPEG, taken inside the opening card) next to it and into the lesson folder, and prints the chapter candidates (each narration line's start as m:ss). Chrome's `file_upload` only accepts files inside the scratchpad and under 10,000,000 bytes; when the master is larger, prepare.js writes a 1080p HEVC two-pass copy that fits instead (H.264 at that bitrate smears terminal text). YouTube gets the smaller copy; the master stays in the lesson folder.
- thumbnail: always the video's own opening title card (the beige text screen), never an app screenshot or YouTube's auto-pick; prepare.js extracts it and it is uploaded in the Thumbnail step.
- title: the lesson title from `lesson.json`, nothing appended (no "(Mac Tutorial)"), brand is lowercase `lpm`, 100 characters max.
- description: a two-line keyword hook (what the video shows, for whom), one line on what lpm is (starts, stops, duplicates and switches between local dev projects on a Mac, with a built-in terminal for AI coding agents such as Claude Code and Codex), the link `https://lpm.cx` (never the demo link `lpm.cx/demo`, user rule 2026-09-19), "What you'll learn" bullets, "Chapters" (first at 0:00, at least three, each 10 s or longer, from prepare.js), one series line, 5–6 hashtags (#lpm #macOS #devtools …). No `@` anywhere (it opens a mention popup) and no next-lesson teaser.
- tags: 15–20 comma-separated (lpm, lpm.cx, the lesson's own verbs and nouns, Claude Code, Codex, mac dev tools, tutorial), under 500 characters. Category Science & Technology. Audience "No, it's not made for kids". Visibility Public. Playlist: the one in `YOUTUBE_PLAYLIST.md` (repo root: heading = playlist title, then its URL, then the lesson titles in series order).
- browser (Claude in Chrome MCP on the user's logged-in Chrome; channel "LPM"): `navigate https://www.youtube.com/upload` → `find` the file input → `file_upload` the MP4 → wait ~5 s → `find` the title and description textboxes, click + `type` → Thumbnail "Upload file" input → `file_upload` the JPEG → Audience radio → "Show more" → Tags textbox (type a comma after every tag) → Category: open the menu, take a full-scale screenshot, click the option by coordinate and `zoom` to verify (a click by `find` ref lands on the hovered row) → Playlists box (coordinate click) → tick the playlist → Done → Next ×3 → Public radio → Publish → copy the link from the "Video published" dialog.
- replacing a published lesson: YouTube cannot swap the file on an existing video, so upload the new cut as a new video (same title, description recipe and thumbnail), then set the old one to Private on `studio.youtube.com/video/<id>/edit` (Visibility box → Private → Done → Save; the Save button stays active until the change is saved). Deleting the old video is the user's call.
- never press Escape inside the upload dialog: it closes the dialog. The upload is already saved as a private draft; reopen it with "Edit draft" on the row. Later edits go through `studio.youtube.com/video/<id>/edit`, then Save.
- playlist, after Publish: the video must end up in the playlist from `YOUTUBE_PLAYLIST.md`, at the position its title has in that list. Preferred path is inside the upload dialog's Details step: the Playlists box ("Select") sits under the description; open it with a coordinate click (a ref click after `scroll_to` did not open it), tick the playlist, Done. If it was skipped, use `studio.youtube.com/video/<id>/edit` → Playlists → tick → Done → Save. The playlist is manually sorted and a new video is appended last, so uploading in series order needs nothing more; otherwise open `https://www.youtube.com/playlist?list=<id>` on the logged-in account, and use the row's ⋮ menu (Move to top / Move to bottom) or drag the ≡ handle until the order matches the file. Then append the lesson title as a new `- ` line at the end of `YOUTUBE_PLAYLIST.md` (or insert it at its series position) — that file is the order of record. Studio's playlist page (`studio.youtube.com/playlist/<id>/videos`) lists and removes videos but cannot reorder them.
- verify before reporting: the row in Channel content shows Public, the thumbnail is the beige title card, the title has no suffix, and the playlist page shows the video in the right position. Report the youtu.be link, the title, the description text and the playlist position. External links stay plain text until the channel completes YouTube's one-time verification (a phone step only the user can do); say so once.

Attribution

gug007gug007
View sourceMore from gug007 →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

Browser Extension Developer

Use this skill when developing or maintaining browser extension code in the `browser/` directory, including Chrome/Firefox/Edge compatibility, content scripts, background scripts, or i18n updates.

281612 votes

Seo Optimizer

SEO optimization with keyword analysis, readability assessment, technical validation, content quality. Use for search rankings, blog posts, content audits, or encountering keyword density, readability scores, meta tags, schema markup errors.

2132 votes

Google Official Seo Guide

Official Google SEO guide covering search optimization, best practices, Search Console, crawling, indexing, and improving website search visibility based on official Google documentation

1862 votes

Tanstack Start

Build a full-stack TanStack Start app on Cloudflare Workers from scratch — SSR, file-based routing, server functions, D1+Drizzle, better-auth, Tailwind v4+shadcn/ui. Use whenever the user mentions TanStack Start, asks to scaffold a full-stack Cloudflare app with SSR, wants an SSR dashboard, or asks for a React 19 + Cloudflare Workers app with file-based routing and server functions — even if they don't name TanStack Start specifically. No template repo — Claude generates every file fresh per ...

9881 votes

Pentest

PTES-aligned adversarial security audit for backend, frontend, and mobile applications. Produces a CVSS-scored Hacker Report with verified PoCs and phased remediation.

5491 votes
View all in development →