Video Subtitles
Generate SRT subtitles from video/audio with translation support. Transcribes Hebrew (ivrit.ai) and English (whisper), translates between languages, burns subtitles into video. Use for creating captions, transcripts, or hardcoded subtitles for WhatsApp/social media.
MIT-0 · Free to use, modify, and redistribute. No attribution required.
⭐ 13 · 6.6k · 55 current installs · 58 all-time installs
byNimrod Gutman@ngutman
MIT-0
Security Scan
OpenClaw
Suspicious
medium confidencePurpose & Capability
The skill claims to use an external Hebrew service (ivrit.ai) and OpenAI Whisper. Neither the SKILL.md nor the registry metadata declare any required API keys or credentials for external services. The README also asks the user to install 'ffmpeg-full' via brew (macOS) while the skill has no OS restriction — this is inconsistent. The 'uv' package manager is nonstandard and not justified.
Instruction Scope
Runtime instructions are limited to running scripts/generate_srt.py with flags (transcribe/translate/burn). That's appropriate for the stated purpose. However SKILL.md mentions automatic model downloads and external models (ivrit.ai, Whisper) without describing where data is sent, whether audio/video is uploaded to remote APIs, or what credentials/tokens are required. That gap could lead to unintended network access or data exfiltration by the script.
Install Mechanism
There is no install spec in the registry (instruction-only), but a Python script is included that will run and reportedly auto-download ~3GB models at runtime. Auto-downloading large model files at runtime from unspecified sources is a risk. The use of 'uv' as the package manager and a brew-only ffmpeg instruction are both unusual and not cross-platform; there is no guidance for Linux/Windows or verified trusted download hosts for models.
Credentials
The skill declares no required environment variables or primary credential, yet it references third-party services (ivrit.ai, OpenAI Whisper) which commonly require API keys. The absence of declared credentials is a mismatch: either the script uses unauthenticated remote services (privacy concern) or it expects keys but fails to document them (operational/permissions concern).
Persistence & Privilege
The skill does not set always:true and does not disable model invocation, so it behaves like a normal user-invoked skill. That is reasonable, but because it will read user-supplied video/audio files and can auto-download large models, you should be aware it may store sizable files on disk and perform network transfers when invoked. There's no explicit higher privilege requested.
What to consider before installing
This skill could be legitimate, but the manifest and README leave important questions unanswered. Before installing or running it: 1) Inspect scripts/generate_srt.py to confirm whether it uploads audio/video to remote APIs (ivrit.ai or OpenAI) and where it downloads model weights from. 2) Ask the author which environment variables or API keys are required and whether keys are ever transmitted or logged. 3) Verify the source URLs for model downloads and ffmpeg instructions; prefer well-known release hosts (GitHub releases, official project domains). 4) Clarify what 'uv' is and get cross-platform install instructions (Linux/Windows). 5) Run the tool in a sandbox/VM/container first to limit disk usage and network access. 6) If you cannot verify these points, do not provide sensitive credentials and consider this skill suspicious.Like a lobster shell, security has layers — review code before you run it.
Current versionv1.0.0
Download ziplatest
License
MIT-0
Free to use, modify, and redistribute. No attribution required.
SKILL.md
Video Subtitles
Generate movie-style subtitles from video or audio files. Supports transcription, translation, and burning subtitles directly into video.
Features
- Hebrew: ivrit.ai fine-tuned model (best Hebrew transcription)
- English: OpenAI Whisper large-v3
- Auto-detect: Automatically detects language and selects best model
- Translation: Translate Hebrew → English
- Burn-in: Hardcode subtitles into video (visible everywhere, including WhatsApp)
- Movie-style: Natural subtitle breaks (42 chars/line, 1-7s duration)
Quick Start
# Plain transcript
./scripts/generate_srt.py video.mp4
# Generate SRT file
./scripts/generate_srt.py video.mp4 --srt
# Burn subtitles into video (always visible)
./scripts/generate_srt.py video.mp4 --srt --burn
# Translate to English + burn in
./scripts/generate_srt.py video.mp4 --srt --burn --translate en
# Force language
./scripts/generate_srt.py video.mp4 --lang he # Hebrew
./scripts/generate_srt.py video.mp4 --lang en # English
Options
| Flag | Description |
|---|---|
--srt | Generate SRT subtitle file |
--burn | Burn subtitles into video (hardcoded, always visible) |
--embed | Embed soft subtitles (toggle in player) |
--translate en | Translate to English |
--lang he/en | Force input language |
-o FILE | Custom output path |
Output
- Default: Plain text transcript to stdout
- With
--srt: Createsvideo.srtalongside input - With
--burn: Createsvideo_subtitled.mp4with hardcoded subs
Requirements
- uv: Python package manager (auto-installs dependencies)
- ffmpeg-full: For burning subtitles (
brew install ffmpeg-full) - Models: ~3GB each, auto-downloaded on first use
Subtitle Style
- Font size 12, white text with black outline
- Bottom-aligned, movie-style positioning
- Max 42 chars/line, 2 lines max
- Natural breaks at punctuation and pauses
Files
2 totalSelect a file
Select a file to preview.
Comments
Loading comments…
