CLI tool for inspecting, modifying, and compressing image and video files.
Install
mkdir -p .claude/skills/skills-sergio-prog && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/11065" && unzip -o skill.zip -d .claude/skills/skills-sergio-prog && rm skill.zipInstalls to .claude/skills/skills-sergio-prog
Activation
This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.
Fram is a compact media workshop for the terminal, API, and Telegram. The current primary surface is the `fram` CLI, backed by the same typed processing core used by the API and bot.Key capabilities
- →Resize images
- →Crop images
- →Convert media formats
- →Compress media
- →Extract media metadata
How it works
It uses FFmpeg to perform reliable image and video manipulation, providing a typed processing core for media tasks.
Inputs & outputs
When to use skills
- →Compressing images
- →Converting video formats
- →Extracting image metadata
- →Resizing avatars
About this skill
Fram Agent Skill
Fram is a compact media workshop for the terminal, API, and Telegram. The current primary surface is the fram CLI, backed by the same typed processing core used by the API and bot.
Use Fram when a user wants to inspect, resize, crop, compress, convert, rotate, flip, blur, grayscale, trim, re-time, or extract media from local image/video files.
Requirements
- Python 3.11+ for source installs.
- FFmpeg and FFprobe on
PATHfor video work and most metadata/probe flows. - Prefer the strict CLI commands for automation. Use interactive mode only when the user explicitly wants a TUI.
Install
From a checked-out repository:
scripts/install.sh
From a Git URL or future package source:
scripts/install.sh --from git+https://github.com/Sergio-prog/fram.git
The script prefers uv tool install and falls back to pipx, which keeps the global CLI isolated from project environments.
CLI Basics
Show help:
fram --help
fram help resize
fram resize --help
Inspect media:
fram info input.jpg
fram info input.mp4
If -o/--output is omitted, Fram writes a generated output path next to the input. For agent workflows, usually pass -o explicitly so the result path is predictable and no existing user file is surprised.
Image Commands
fram resize input.jpg 128x128 -o output.jpg
fram crop input.jpg 128x128 --anchor center -o avatar.jpg
fram compress-image input.jpg --quality 80 -o compressed.webp
fram convert input.png webp -o output.webp
fram rotate input.jpg 90 -o rotated.jpg
fram flip input.jpg --horizontal -o flipped.jpg
fram strip-metadata input.jpg -o clean.jpg
fram blur input.jpg --radius 2 -o blurred.jpg
fram grayscale input.jpg -o gray.jpg
Video Commands
fram cut input.mp4 --start 00:00:05 --end 00:00:12 -o clip.mp4
fram cut input.mp4 --start 5 --duration 10 -o clip.mp4
fram fps input.mp4 24 -o video-24fps.mp4
fram compress-video input.mp4 --crf 24 --preset medium -o smaller.mp4
fram strip-audio input.mp4 -o silent.mp4
fram extract-audio input.mp4 -o audio.m4a
fram extract-frame input.mp4 --at 00:00:05 -o frame.png
fram gif input.mp4 --fps 12 --width 480 -o clip.gif
fram speed input.mp4 2 -o fast.mp4
fram reverse input.mp4 --no-audio -o reversed.mp4
fram grayscale input.mp4 -o gray.mp4
Interactive Mode
fram
fram input.jpg
fram input.mp4
Interactive mode is a Textual TUI with previews when the terminal supports image protocols. It is useful for manual exploration, not for repeatable agent automation.
Agent Guidance
- Do not edit
.env.*files unless the user explicitly permits it;.env.exampleis okay. - Check
fram infobefore lossy or timing-sensitive edits when dimensions, duration, FPS, or codecs matter. - Prefer explicit output paths and avoid overwriting user inputs.
- For destructive-looking operations like compression, stripping metadata, or audio removal, write to a new file unless the user asks otherwise.
- Validate important results with
fram info, file existence checks, or targeted tests. - Mention FFmpeg if video commands fail with missing binary, codec, or probe errors.
When not to use it
- →Interactive TUI mode for automation
Prerequisites
Limitations
- →Requires FFmpeg/FFprobe
How it compares
It offers a compact, typed media workshop for terminal and automation use.
Compared to similar skills
skills side by side with the closest alternatives in the catalog.
| Skill | Installs | Updated | Safety | Difficulty |
|---|---|---|---|---|
| skills (this skill) | 0 | 2mo | Review | Beginner |
| video-downloader | 101 | 7mo | Review | Beginner |
| video-processor | 17 | 4mo | Review | Intermediate |
| jianying-editor | 38 | 2mo | Review | Advanced |
Try saying
Example prompts that trigger this skill in your AI assistant.
You might also like
video-downloader
ComposioHQ
Downloads videos from YouTube and other platforms for offline viewing, editing, or archival. Handles various formats and quality options.
video-processor
basher83
Process video files with audio extraction, format conversion (mp4, webm), and Whisper
jianying-editor
luoluoluo22
剪映 (JianYing) AI自动化剪辑的高级封装 API (JyWrapper)。提供开箱即用的 Python 接口,支持录屏、素材导入、字幕生成、Web 动效合成及项目导出。
gemini-logo-remover
bear2u
Remove Gemini logos, watermarks, or AI-generated image markers using OpenCV inpainting. Use this skill when the user asks to remove Gemini logo, AI watermark, or any logo/watermark from images.
vectcut-api
sun-guannan
VectCutAPI is a powerful cloud-based video editing API tool that provides programmatic control over CapCut/JianYing (剪映) for professional video editing. Use this skill when users need to: (1) Create video draft projects programmatically, (2) Add video/audio/image materials with precise control, (3) Add text, subtitles, and captions, (4) Apply effects, transitions, and animations, (5) Add keyframe animations, (6) Process videos in batch, (7) Generate AI-powered videos, (8) Integrate with n8n workflows, (9) Build MCP video editing agents. The API supports HTTP REST and MCP protocols, works with both CapCut (international) and JianYing (China), and provides web preview without downloading.
sora
davila7
Use when the user asks to generate, remix, poll, list, download, or delete Sora videos via OpenAI’s video API using the bundled CLI (`scripts/sora.py`), including requests like “generate AI video,” “Sora,” “video remix,” “download video/thumbnail/spritesheet,” and batch video generation; requires `OPENAI_API_KEY` and Sora API access.