CutScript is a local-first, Descript-like video editor where you edit video by editing text.
Delete a word from the transcript and it's cut from the video.
Features:
- Word-level transcription with WhisperX
- Text-based video editing with undo/redo
- AI filler word removal (Ollama/OpenAI/Claude)
- AI clip creation for shorts
- Waveform timeline with virtualized transcript
- FFmpeg stream-copy (fast) and re-encode (4K) export
- Caption burn-in and sidecar SRT generation
- Studio Sound audio enhancement (DeepFilterNet)
- Keyboard shortcuts (J/K/L, Space, Delete, Ctrl+Z/S/E)
- Encrypted API key storage
- Project save/load (.aive files)
Architecture:
- Electron + React + Tailwind (frontend)
- FastAPI + Python (backend)
- WhisperX for transcription
- FFmpeg for video processing
- Multi-provider AI support
Performance optimizations:
- RAF-throttled time updates
- Zustand selectors for granular subscriptions
- Dual-canvas waveform rendering
- Virtualized transcript with react-virtuoso
Built on top of DataAnts-AI/VideoTranscriber, completely rewritten as a desktop application.
License: MIT
- Add streaming summarization via Ollama API (stream_summarize_with_ollama)
- Cache ML models with @st.cache_resource (diarization, NER, translation, Whisper)
- Add temp file cleanup for extracted audio
- Add system capabilities detection (FFmpeg, GPU info)
- Add get_video_duration utility
- Improve validation with FFmpeg check
- Rewrite app.py with streaming support and UI enhancements
- Clean up redundant comments and unused imports across all utils
moviepy 2.x removed the moviepy.editor submodule. Import AudioFileClip directly from moviepy with a fallback for moviepy 1.x users. Also close the audio clip after writing to prevent resource leaks.
Co-authored-by: Cursor <cursoragent@cursor.com>
- Add disk cleanup step to remove unused packages (~30GB freed)
- Remove arm64 platform build (reduces disk usage significantly)
- Add cleanup step between CPU and GPU builds
- Fixes 'No space left on device' error during Docker build