A short-form editor for one person is a bounded project. Import clips, cut them on a timeline, burn in captions from a Whisper transcript, mix in a music track and export vertical or horizontal MP4 with ffmpeg: an agent gets a talking-head and screencast editor working in a weekend. What it won't have is the feel of CapCut: smooth scrubbing of 4K footage, effects, transitions and templates with commercial licences, stock music, and models for background removal, tracking and generated video. If you want a full timeline today, Shotcut and Kdenlive are the shorter road.
Before you buildCapCut Free covers basic editing and free templates. Try your next video on it first: you only need Pro if you rely on Pro-marked effects or templates, 4K export or the AI tools.
Build me a local short-form video editor to replace CapCut for talking-head and screen clips. Requirements: - Node.js 22 + TypeScript: a Fastify server and a React UI built with Vite. `npm start` serves http://localhost:4600. ffmpeg and ffprobe must be on the PATH; exit with a clear message if not. - Storage: ./data/projects/<id>/ holds copies of the imported clips and a project.json (clips with in and out points, caption words, text overlays, music track). On import, make a 540p H.264 proxy with a keyframe on every frame so scrubbing stays smooth. - Timeline: one video track and one music track. Drag to reorder clips, split at the playhead, trim by dragging edges, volume per clip, 100 levels of undo. The preview plays the proxies in an HTML5 video element driven by the timeline. - Captions: transcribe with whisper.cpp (`whisper-cli`, model from .env, default ggml-small) with word timestamps. Show the words as editable text and offer three fixed styles (font, outline, position, highlight the spoken word). - Format: choose 9:16, 1:1 or 16:9 per project. "Fit" blurs the background; "fill" crops around a centre point you can drag. - Export: one ffmpeg filter graph per project (trim, scale and crop, concat, captions burned in as ASS through libass, music lowered by 12 dB while words are spoken). H.264 + AAC MP4, 1080p, 30 fps, into ./data/exports/, plus an .srt of the captions. - Check: the exported duration must match the timeline within 0.1 s; show both numbers and fail the export if they differ. - Single user. No accounts, no telemetry, local-first; nothing leaves the machine. - Out of scope: transitions and effects, keyframe animation, templates, stock media, cloud sync, a phone app, AI video generation. - README: installing ffmpeg and whisper.cpp, where the files live, and a warning that long 4K clips preview slowly even with proxies.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own CapCut.
Add automatic clean-up to the video editor in this folder. Requirements: - A "Remove silences" button that uses the caption word timestamps: gaps longer than 0.6 s become 0.2 s, and the clip is split at those points on the timeline. - A "Remove filler words" button with a list in .env (um, uh, you know) that cuts those words with a 20 ms audio fade at each edge. - Show how many seconds each action removed and let me undo it in one step. - Update the README.
Add face-following reframing to the video editor in this folder. Requirements: - A Python 3.11 helper using `mediapipe` face detection that samples one frame every 0.2 s of a clip and writes the face centre to a JSON file next to it. - In "fill" mode, smooth the crop centre with a moving average over 1 second and cap the pan speed so the picture never jumps. - Fall back to the draggable centre when no face is found for more than 2 seconds. - Update the README with the helper's install step.
Add export presets to the video editor in this folder. Requirements: - Presets for TikTok, Instagram Reels and YouTube Shorts: resolution, frame rate, bitrate cap and maximum duration, stored in presets.json so I can edit them. - Before exporting, warn if the timeline is longer than the preset's maximum, and after exporting check the file size against the preset's limit. - Name files <project>-<preset>.mp4. - Update the README and say that the limits in presets.json are my own to keep current.
CapCut is where a phone-first creator can go from raw clip to captioned vertical video in minutes, with trending templates and effects built in. Reviews say more of the library has moved behind Pro over time, so the people who post every week pay for speed and for the assets, not for the cutting itself.
Estimate · Everything runs on your machine, so there is no monthly bill. The build is token usage on your agent plan, and a timeline editor takes more rounds of fixes than most prompts here.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Free | $0 | $0 | Free templates and basic editing tools. |
| Pro | $19.99 | $15 | All premium templates and Pro features, AI features, 1,200 AI credits a month, 1 TB of cloud space, and the option to buy more credits. |
| Ultra | $79 | $75 | Everything in Pro plus exclusive AI features, 8,645 AI credits a month and a longer generation allowance, 1 TB of cloud space. |
| Teams | $12.49 | $8.96 | Pro features for every seat, brand kit, 1,200 AI credits per seat a month, 1 TB of cloud space. |
Free gives free templates and basic editing tools; the pricing page lists no caps.
Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: Effects, transitions, stickers and templates with commercial-use licences, Stock music and sound effects.
About $19.99 a month on the Pro plan, $239.88 a year (checked 2026-10-19).
Effects, transitions, stickers and templates with commercial-use licences; Stock music and sound effects; AI tools such as background removal, camera tracking, avatars and generated video; Projects and cloud space that open on phone, desktop and web; Smooth real-time preview of long 4K clips. If any of those matter to you, keep paying.
Yes: OpenCut (open source), Shotcut (open source), Kdenlive (open source).