Skip to main content
← Back to list
01Issue
FeatureOpenExtensionsPublic
AssigneesNone

Relationships

#4318 @swamp/video: upload workflow to publish a take to YouTube (video, description, chapters, captions, thumbnail)

Opened by skunk-ape · 11/2/2026

Problem

Getting a finished take onto YouTube is a manual step. video-render writes <rec>.polished.mp4, the .srt and a 1280x720 thumbnail. video-describe writes the title, description and chapters to youtube.txt and the video-describe data. Then someone opens YouTube Studio and copies each piece in by hand. That's slow and error-prone: chapters get pasted wrong, the thumbnail or captions get forgotten.

Proposed solution

Add a youtube behavior with an upload method, plus a video-publish workflow that runs it after video-describe:

  • Auth: OAuth 2.0 for the YouTube Data API v3, with the client secret and refresh token kept in a swamp vault so they stay out of logs and the agent session. A one-time authorize method (or documented steps) gets the refresh token.
  • Upload: a resumable videos.insert of <rec>.polished.mp4. Title and description, with chapters, come from the take's video-describe data, wired in with CEL rather than typed again.
  • Captions: captions.insert with <rec>.polished.srt.
  • Thumbnail: thumbnails.set with <rec>.thumbnail.jpg. This needs a verified channel, so the step should be skipped with a warning when the channel isn't verified.
  • Inputs: privacyStatus (default private, also unlisted or public), publishAt for scheduling, playlistId, tags, categoryId, madeForKids (default false).
  • Output data: the video id, URL and upload status, so a re-run updates the existing video (videos.update) instead of uploading a duplicate.

Alternatives

  • Keep it manual with youtube.txt as the source. That works, but it's the step most likely to go wrong.
  • Use a generic shell step around a CLI uploader. That bypasses the data model and vault handling.

Upstream repository: https://github.com/swamp-club/swamp-extensions

Environment

  • Extension: @swamp/video@2026.10.30.1
  • swamp: 20261102.180642.0-sha.c7a42995
  • OS: linux (x86_64)
  • Deno: 2.9.8
  • Shell: /usr/bin/bash
02Bog Flow
◉OPEN○TRIAGED○IN PROGRESS○SHIPPED

Open

11/2/2026, 8:52:50 PM

No activity in this phase yet.

03Sludge Pulse
Editable. Press Enter to edit.

system commented 11/2/2026, 8:52:50 PM

Classified automatically when this issue was filed.

  • Source: Extensions

If you feel this classification is incorrect, add a ripple to tell us so.

Sign in to post a ripple.