agentsclimarketplace

Universal file converter

Skill 30bewater/universal-file-converter

Safely inspect, plan, convert, transcode, remux, resize, compress, extract, repack, or migrate files across common formats. Use for video, audio, raster images, vector graphics, documents, Office files, PDFs, ebooks, archives, spreadsheets, CSV/TSV/JSON/JSONL, and specialist formats such as 3D, CAD, fonts, or geospatial data. Route work to locally available tools such as FFmpeg, ImageMagick, Inkscape, Pandoc, LibreOffice, Poppler, qpdf, Calibre, 7-Zip, Blender, Assimp, FontForge, FreeCAD, or GDAL; detect missing capabilities, preserve originals, disclose lossy or fidelity risks, and verify every output.From its SKILL.md

Install
npx -y skills add 30bewater/universal-file-converter

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 27 days oldThe repository was created 27 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

5.9 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

Universal File Converter

Convert files through a capability-driven workflow. Treat this skill as a safe router over local conversion engines, not as a promise that every proprietary, encrypted, damaged, or DRM-protected format can be converted.

Non-negotiable rules

  1. Preserve the source. Never overwrite or delete an input unless the user explicitly requests an in-place operation and the tool supports it safely.
  2. Inspect before converting. Do not trust the extension alone; check the signature and use a format-aware probe when available.
  3. Check actual capabilities. Tool support varies by build, delegates, codecs, plugins, and operating system.
  4. Disclose trade-offs before lossy, layout-changing, metadata-dropping, color-changing, archive-repacking, or schema-changing conversions.
  5. Never weaken a security policy, bypass DRM, expose credentials, execute embedded macros, or install software without explicit authorization.
  6. Avoid shell interpolation and eval. Pass paths as literal arguments and quote them for the active shell.
  7. Write to a distinct output path or temporary output, validate it, then report success. A zero exit code alone is not proof of a valid conversion.
  8. For batches, test one representative file first and keep per-file success and failure records.

Workflow

1. Resolve intent

Determine the source, target format, destination, quality-versus-size preference, metadata policy, transparency or color requirements, batch scope, and device or application compatibility target. Use conservative defaults when the request is ordinary and reversible.

2. Inspect the input

Run the portable inspector with the available Python launcher:

python scripts/inspect_file.py INPUT

Then use the category-native inspector when possible:

  • Video/audio: ffprobe
  • Raster image: magick identify
  • PDF: pdfinfo or qpdf --check
  • Archive: 7z l or the platform archive tool
  • Office/ebook container: ZIP integrity plus format-specific inspection

Treat an extension/signature mismatch as suspicious and stop before opening untrusted content with a complex parser.

3. Probe available engines

python scripts/probe_tools.py

Do not assume an installed program supports a requested codec or delegate. Query native capability lists when the conversion depends on them, such as ffmpeg -encoders, ffmpeg -muxers, magick identify -list format, or pandoc --list-output-formats.

4. Build a conversion plan

python scripts/plan_conversion.py INPUT OUTPUT

Use the plan as routing guidance, then load the matching reference below. If no compatible local engine is available, explain the missing capability and propose the smallest suitable dependency or a safe intermediate format.

5. Execute safely

  • Prefer direct, single-generation conversion over chains of lossy intermediates.
  • Prefer stream copy or lossless paths only when container and codec compatibility is confirmed.
  • Use a new filename by default, such as name.converted.ext.
  • Keep temporary files beside the output when atomic replacement is required.
  • Do not place secrets such as stream keys or document passwords directly in logged commands.

6. Verify the result

python scripts/verify_output.py OUTPUT

Also perform format-native checks when material quality matters: compare duration, stream counts, dimensions, page counts, archive members, row counts, color profile, alpha channel, metadata, or a rendered sample.

7. Report precisely

Report the source and output paths, selected engine, source and target formats, whether the conversion was lossy, important metadata or fidelity changes, validation performed, and any warnings. Never claim unsupported fidelity.

Routing map

FamilyPreferred enginesLoad
Video and audioFFprobe + FFmpegreferences/media.md
Raster images and vector graphicsImageMagick + Inkscapereferences/images-vectors.md
Documents, Office, PDF, ebooksPandoc + LibreOffice + Poppler/qpdf + Calibrereferences/documents-pdf-ebooks.md
Archives and structured data7-Zip/tar + bundled structured converterreferences/archives-data.md
3D, CAD, fonts, GIS and uncommon formatsBlender/Assimp + FreeCAD + FontForge + GDALreferences/specialist-formats.md

Always load references/safety-quality.md for untrusted files, recursive batches, in-place requests, public upload services, credentials, encrypted files, or high-fidelity requirements. Load references/platform-installation.md only when a required executable is missing.

Bundled scripts

  • scripts/inspect_file.py: inspect size, extension, MIME guess, signature, and category without modifying the file.
  • scripts/probe_tools.py: discover supported local conversion engines and versions.
  • scripts/plan_conversion.py: recommend candidate engines and surface fidelity risks; it never performs the conversion.
  • scripts/convert_structured.py: safely convert CSV, TSV, JSON, JSONL, and NDJSON with Python only.
  • scripts/verify_output.py: perform structural and tool-assisted output validation.

Resolve all resource paths relative to this skill directory. Other Agent Skills-compatible clients may ignore agents/openai.yaml; the workflow and scripts do not depend on it.

What ships with it: 20 files

58.4 KB alongside SKILL.md, 6 of them executable

agents/

Keep looking

Skills are one crate of 326,144. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.