무료 프롬프트 FREE 스킬

유튜브 일괄 업로드 스킬 (youtube-studio-batch-upload) — 여러 영상 한 번에 등록

이온디 2026.07.17 0 0
평점 0.0
리뷰 0개
사용 방법

본문을 복사해 AI 도구에서 실행하세요

  1. STEP 1

    아래 본문에서 역할, 목적, 입력값, 출력 형식을 확인합니다.

  2. STEP 2

    ChatGPT, Claude, Gemini, Codex의 대화창이나 프로젝트 지침에 붙여넣습니다.

  3. STEP 3

    예시 입력값을 내 업무 정보로 바꾼 뒤 실행하고 결과를 검토합니다.

youtube-studio-batch-upload는 반복 업무를 더 안정적으로 처리하기 위한 AI 에이전트 스킬입니다.

Batch YouTube Studio upload workflow for videos sourced from Airtable, Google Drive, Loom, YouTube, or local files. Use when Codex needs to download many submitted videos, stage filenames, build YouTube titles/descriptions from table fields, upload through Chrome/Computer Use, set videos Unlisted, add a playlist, save each upload before moving on, track links, and report incomplete or blocked source rows.

사용 방법

Codex나 호환되는 AI 에이전트의 스킬 폴더에 아래 SKILL.md 내용을 저장한 뒤, 설명에 포함된 트리거 문장으로 호출하세요.

사용 예:
youtube-studio-batch-upload 스킬 사용해줘.
이 작업은 youtube-studio-batch-upload 기준으로 진행해줘.

연관스킬

이 스킬과 함께 쓰면 좋은 관련 스킬입니다.

원본 위치

.codex/skills/gocut-youtube-studio-batch-upload/SKILL.md

SKILL.md

---
name: youtube-studio-batch-upload
description: Batch YouTube Studio upload workflow for videos sourced from Airtable, Google Drive, Loom, YouTube, or local files. Use when Codex needs to download many submitted videos, stage filenames, build YouTube titles/descriptions from table fields, upload through Chrome/Computer Use, set videos Unlisted, add a playlist, save each upload before moving on, track links, and report incomplete or blocked source rows.
---

# YouTube Studio Batch Upload

## Operating Rules

- Use the browser/computer-use skill for live YouTube Studio or Airtable UI work. Call `get_app_state` before direct UI actions in a turn.
- Treat upload as a batch waterfall: download/source recovery, filename staging, metadata staging, upload, per-video titling/playlist/visibility/save, verification, ledger.
- Do not include source video URLs in YouTube descriptions. Strip Drive, Loom, WeTransfer, and source YouTube links from final descriptions unless the user explicitly asks to publish those links.
- Use the full submitted talk abstract in the description by default; do not compress it to a teaser unless the user asks for short copy.
- Do not publish internal Airtable fields such as `Additional Notes`, reviewer notes, source status, or operational comments unless the user explicitly marks them as public copy.
- Always select the target playlist before advancing to visibility.
- Always choose `Unlisted` and click `Save` before opening or editing the next upload.
- If YouTube blocks saving because SD processing is not finished, wait on the modal and save after processing clears. Do not assume the draft is published.
- Prefer batch file selection where the UI allows it. If selector controls fail, upload smaller batches or one file at a time, but keep download and metadata preparation batched.
- Preserve a clear blocked list for rows like `waitlisted`, `WIP`, `To provide`, private/deleted links, or access-denied Drive files.

## Workflow

1. Export or scrape the source table into CSV/TSV with at least: speaker name, talk title, talk description, video source URL, bio, company, handles, LinkedIn/GitHub, and any public links. Treat notes/status fields as private unless told otherwise.
2. Build a manifest and metadata JSON:
   - Run `scripts/youtube_batch_helper.py build-metadata presenters.csv --out work/youtube_metadata.json`.
   - Use `--playlist "Playlist Name"` and `--skip-source-url` unless the user says otherwise.
   - Inspect blocked rows and rows with placeholder source values before downloading.
3. Download source videos into `downloads/.../raw`:
   - Drive: prefer `yt-dlp` or direct browser-authenticated downloads if permissions require Chrome cookies/session.
   - Loom: try `yt-dlp`; if it fails, inspect the page for signed HLS manifests and assemble with `ffmpeg`.
   - YouTube source videos: try `yt-dlp` with browser cookies or alternate player clients. Respect access and copyright limitations.
4. Stage upload files under a batch directory with final human-readable names:
   - `Talk Title - Speaker Name.mp4`
   - Keep punctuation YouTube accepts; avoid filesystem-hostile characters.
5. Open YouTube Studio upload in Chrome, select as many staged files as practical, and then complete each upload dialog:
   - Set title and description from metadata.
   - Select the playlist.
   - Advance through Video elements and Checks.
   - Select `Unlisted`.
   - Save and wait until the row appears as `Unlisted / None` or known restriction.
6. Record each YouTube link in a ledger and report:
   - Uploaded count and new links.
   - Any restrictions, especially copyright.
   - Blocked/unavailable source rows with exact reason.

## Metadata Shape

Use this description layout unless the user gives a channel-specific template:

```text
<Talk Description>

Speakers:
- <Name> (<Company>): <Bio>
  X/Twitter: <url-or-handle>
  LinkedIn: <url>
  GitHub: <url-or-handle>
```

Include the whole submitted talk description/abstract when it is suitable for public viewing. Include social media and company/project URLs entered by the speaker, but omit blank lines for missing fields. Do not include source video URLs or internal `Additional Notes`/reviewer fields.

Keep descriptions factual and avoid inventing missing affiliations. For incomplete presenter names, use available fields and web search if the user asked to fill missing public info.

## UI Automation

Read `references/ui-js-snippets.md` when using Chrome DOM automation for YouTube Studio. These snippets cover setting contenteditable title/description boxes, selecting playlists, clicking through steps, saving unlisted, and verifying row state.

For Studio-only cleanup on existing videos, such as thumbnail replacement, schedule times, save-state recovery, or playlist fixes after upload, switch to the `youtube-studio-computer-use` skill. Keep this skill focused on source acquisition, metadata preparation, staged filenames, upload batching, and upload ledgers.

Use direct Computer Use clicks for file pickers and modal buttons when DOM automation cannot reach native UI. Use coordinates only after confirming the screenshot state.

## Verification

- Verify every uploaded row shows `Unlisted` after Save.
- Verify source URL patterns are absent from descriptions using the helper audit or DOM readback.
- Verify playlist selection during the upload modal; YouTube Studio's channel list does not always show playlist membership.
- Check upload processing dialogs: `Video upload complete` is not enough if the dialog still says SD processing must finish before unlisted publication.

## Helper Script

`scripts/youtube_batch_helper.py` provides:

- `build-metadata`: convert Airtable/CSV rows into YouTube metadata JSON and a blocked-row report.
- `audit-descriptions`: scan metadata JSON for accidental source URLs.
- `ledger`: create or update a CSV ledger of uploaded links and statuses.

Run `python3 scripts/youtube_batch_helper.py --help` for command details.
리뷰

별점과 함께 남기는 사용 후기

아직 리뷰가 없습니다
리뷰를 작성하려면 로그인하세요.
첫 리뷰를 남겨보세요.