convt
GitHub本地文件转换工具,支持图片、视频、音频及文档格式互转。无需上传,利用本地引擎完成转换,适用于批量处理及脚本自动化场景。
Trigger Scenarios
Install
npx skills add opencoredev/convt --skill convt -g -y
SKILL.md
Frontmatter
{
"name": "convt",
"description": "Convert images, video, audio, PDFs and documents locally with the convt CLI. Use when an agent needs to convert files on the user's machine without uploading them, list formats or engines, or run a batch from a script."
}
convt
Local file conversion. Right-click or run the CLI; files stay on disk. Nothing is uploaded. Routes through engines on this machine (FFmpeg, PDFium, LibreOffice, image, resvg, libheif). Multi-hop routes are at most three steps. A still image cannot become video or audio through a multi-hop route.
Print this file: convt --skill or convt skill.
Install check
command -v convt
convt --version
convt engines
convt engines lists each ready backend and each unavailable one with its reason. A "no route" error usually means an engine is missing, not a bad flag. Packaged installs come from https://convt.app/download. From this repository: cargo run -p convt-cli -- … or ./target/debug/convt. A convt on PATH may be an older install.
Convert
convt <files or folders> --to <fmt> [options]
--to is required unless --preset names a preset that sets to. Output lands next to each input unless --out-dir is set. With --out-dir, files found in subfolders keep their relative folder.
{{FLAGS}}
Commands
{{COMMANDS}}
Formats
Ids are what --to and convt formats use. Extensions select the input format (no content sniffing). Availability depends on convt engines; Office formats need LibreOffice or convt pack install documents. Raster-to-SVG is not offered.
{{FORMATS}}
Examples
convt photo.png --to webp
convt photos/ --to webp -r
convt lease.pdf --to png --pages 1-3
convt clip.mov --to mp4 --video-height 720
convt photo.png --to jpeg -q 60 --max-size 64 --background black
convt clip.mov --to mp4 --no-audio --video-codec hevc
convt photos/ -r --to webp -j 4 --json --out-dir out/
convt targets photo.heic
convt targets photo.heic --menu
convt menu set audio flac mp3
convt formats --json
convt pack status documents
Exit codes and errors
0: success (including--skill,--help, and list commands)1: a conversion failed, or the run was rejected before it started (no--to, unknown format, nothing to convert, license)2: usage error from the parser (unknown flag, bad value)130: cancelled (SIGINT; a second interrupt exits immediately)
--json prints one event per line on stdout: started, progress, done, failed, then summary. A failed event has a stable kind: unsupported_input, no_route, invalid_option, engine_missing, engine_failed, output_exists, cancelled, io.
Folder inputs skip files that cannot reach the target (or already are it). Files named directly always run, so their errors show.
Tips for agents
- Non-interactive: pass every option on the command line. The CLI does not prompt.
- Prefer
--jsonwhen parsing progress. Humaninput -> outputlines go to stderr unless--json. - Outputs never overwrite existing files; a taken name gets a numbered suffix. Use
--out-dirto keep results apart from the inputs. - Discover before converting:
convt engines,convt formats,convt targets path/to/file. formats,targets,menu,engines,presetsand--skillnever need a license. Only conversions do. Source builds skip the license check by default; packaged builds start a 7-day trial on the first conversion.- In an enforced build,
convt license activatereads the key from stdin when KEY is omitted. Do not put a license key in a shared command line. convt pack install documentsis the only pack command that may use the network.pack statusis offline.- Presets are TOML (
to,quality,max_size, …) under the config presets directory, or a path to a.tomlfile. List them withconvt presets. PointCONVT_CONFIG_DIRat a private directory instead of the user's real presets.
Version History
- 1920b04 Current 2026-10-18 15:25


