YouTube to TikTok,
Instagram, and
YouTube Shorts, with your approval.
Give cutter a YouTube URL. It cuts the video into short vertical clips, writes captions tailored to each platform, sends every clip to your phone on Telegram for review, and posts the ones you approve — one a day.
$ cutter run
--url "https://youtube.com/watch?v=..."
--post all
--approve
Pipeline
01
Retrieve
YouTube blocks downloads from datacenter IPs, so a small helper on a home machine fetches the video (with its title, description, tags, and top comments) and hands the files to the always-on server.
02
Detect & slice
Two FFmpeg passes - one for scene changes, one for silence gaps - are merged into 25-55 second segments at the most natural cut points, then stream-copied out.
03
Reframe
Each clip is reformatted to fill a 9:16 frame - either centred over a blurred version of itself, or rotated 90° to fill the whole screen for detailed landscape visuals.
04
Caption
Claude reads the video metadata and writes a distinct caption for each platform - TikTok, Instagram, and a fuller standalone description for YouTube - plus relevant hashtags.
05
Approve
Each clip is sent to your phone on Telegram as a video. Reply yes, no, or no more today. Any caption can be edited inline before anything gets posted.
06
Post
Approved clips go to Instagram Reels and YouTube Shorts. TikTok has no API for personal apps, so its clip is handed back over Telegram to post by hand.
Details
Every stage writes its output to disk. Re-running the same URL resumes from wherever it left off - clips already cut, captioned, or posted are not repeated. A withheld clip stays withheld across runs.
The approval conversation runs over a Telegram bot - no session limits, and clips are sent as playable videos. A companion read-only assistant answers freeform questions from your phone ("what's in the queue?", "how does posting work?") and can queue new videos, but never changes anything else.
Posting credentials are loaded from .env and validated only when the platform is actually in use. YouTube and Instagram post automatically; TikTok is a manual hand-off, since its API is closed to personal apps.
Commands
$ cutter daily # process the next queued clip
$ cutter queue add URL --reframe rotate
$ cutter fetch --server you@home # home retriever
$ cutter assistant # read-only Telegram Q&A
$ cutter auth telegram|youtube|instagram|tiktok
Install
$ python3 -m venv .venv && source .venv/bin/activate
$ pip install -e .
Requires Python 3.11 or later and ffmpeg on PATH. Copy .env.example to .env and fill in your credentials before running.