aviz85/claude-skills-library

youtube-uploader

Upload videos to YouTube with title, description, tags. Use for: youtube upload, publish video, share on youtube.

First seen Jan 22, 2026

Installation

$ npx skills add aviz85/claude-skills-library --skill youtube-uploader

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from aviz85/claude-skills-library · top by installs.

npx skills add aviz85/claude-skills-library

Browse all from aviz85/claude-skills-library

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Also listed on

Alternate registries and mirrors of this skill.

Repository health

Stars 49
License MIT
Default branch main
Open issues 1
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Declared agents claude-code

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 3,741 B
  • docs SUMMARY.md 134 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 504 installs

SKILL.md

YouTube Uploader

First time? If setupcomplete: false above, run ./SETUP.md first, then set setupcomplete: true.

Upload videos to YouTube with full metadata control.

Quick Start

cd ~/.claude/skills/youtube-uploader/scripts

# First time: authenticate
npx ts-node youtube-upload.ts --auth

# Upload video
npx ts-node youtube-upload.ts \
  --video /path/to/video.mp4 \
  --title "My Awesome Video" \
  --description "Check out this amazing content!" \
  --tags "tech,ai,tutorial" \
  --privacy unlisted

# Upload as YouTube Short (vertical video)
npx ts-node youtube-upload.ts \
  --video /path/to/short.mp4 \
  --title "Quick Tip #Shorts" \
  --description "A quick tip for you!" \
  --privacy public \
  --short

Options

Option Short Description
--video -v Video file path (required)
--title -t Video title (required)
--description -d Video description
--tags Comma-separated tags
--privacy -p Privacy: public, unlisted, private (default: unlisted)
--category -c Category ID (default: 22 = People & Blogs)
--thumbnail Custom thumbnail image path
--playlist Add to playlist ID
--short Mark as YouTube Short
--auth Run OAuth2 authentication flow
--dry-run Preview without uploading

Category IDs

ID Category
1 Film & Animation
2 Autos & Vehicles
10 Music
15 Pets & Animals
17 Sports
19 Travel & Events
20 Gaming
22 People & Blogs
23 Comedy
24 Entertainment
25 News & Politics
26 Howto & Style
27 Education
28 Science & Technology

Authentication

First-time setup requires OAuth2 authentication:

  1. Run npx ts-node youtube-upload.ts --auth
  2. Browser opens Google login
  3. Grant permissions to upload videos
  4. Token is saved to .youtube-token.json

Token refreshes automatically. Re-run --auth if expired.

Environment

Create scripts/.env:

YOUTUBE_CLIENT_ID=your_client_id
YOUTUBE_CLIENT_SECRET=your_client_secret

Get credentials from Google Cloud Console:

  1. Create project at console.cloud.google.com
  2. Enable YouTube Data API v3
  3. Create OAuth2 credentials (Desktop app)
  4. Download and extract clientid & clientsecret

Examples

Upload Tutorial Video

npx ts-node youtube-upload.ts \
  -v tutorial.mp4 \
  -t "How to Use Claude Code - Complete Guide" \
  -d "Learn everything about Claude Code in this comprehensive tutorial.

Timestamps:
00:00 Introduction
02:30 Getting Started
05:00 Advanced Features

#ClaudeCode #AI #Tutorial" \
  --tags "claude code,ai,tutorial,anthropic,coding" \
  --category 28 \
  --privacy public

Upload YouTube Short

npx ts-node youtube-upload.ts \
  -v short_video.mp4 \
  -t "Mind-blowing AI trick! #Shorts" \
  -d "This will change how you work! #AI #Tech" \
  --privacy public \
  --short

Upload to Playlist

npx ts-node youtube-upload.ts \
  -v episode5.mp4 \
  -t "Podcast Episode 5" \
  --playlist PLxxxxxxxxxxxxxx \
  --privacy unlisted

Output

On success, returns:

Limitations

  • Max file size: 256GB (YouTube limit)
  • Supported formats: MP4, MOV, AVI, WMV, FLV, 3GP, MPEG
  • Daily upload quota: 10,000 units (typically ~6 videos/day)
  • Title max: 100 characters
  • Description max: 5,000 characters
  • Tags max: 500 characters total