文件格式转换器 (File Converter):在 Agent 里落地图片、视频与 PDF 处理

前言

在文档、运营素材或自动化脚本里,常见需求是把 PNG 转成 WebP、把演示视频截一段做成 GIF,或把多份 PDF 合成一份。大模型对话本身改不了二进制文件,通常要你自己找 Sharp、FFmpeg、pdf-lib 再写脚本。下面介绍 SkillHub 社区 Skill「文件格式转换器 (File Converter)」:把上述能力写成 Agent 可遵循的 SKILL.md,并附带 Node.js 命令行入口 converter.js,由 Agent 在对话中按步骤调用本地命令完成转换。

这是什么

文件格式转换器 (File Converter) 是面向 design-media 场景的 Agent Skill,坐标为 @user_8509461a/file-converter-new,当前版本 1.0.0,来源为 community,发布者为 user_8509461a(SkillHub 页面标注作者为蜀企投管(四川省)企业管理有限公司)。SkillHub 分类为 design-media,标签 requires_api_key=false,即不依赖额外 API Key。

官方简介:专业的文件格式转换工具,支持图片格式转换/压缩、视频转 GIF、PDF 合并处理,基于 Sharp 和 FFmpeg 高性能处理引擎。SkillHub 上该 Skill 评分 100000,下载 1297 次(统计以 SkillHub 页面为准)。

核心功能

以下能力与安装包内 SKILL.md、converter.js 一致,Agent 安装后应优先按 Skill 说明调度 node converter.js。

图片

  • 格式互转:PNG、JPG、WebP、GIF 等(convert 子命令,可调宽度、高度、质量)。
  • 单张压缩:compress,通过 -q 指定质量。
  • 目录批量:batch,用 -f 指定目标格式(如 jpg、png、webp)。

视频转 GIF

  • 输入常见容器格式(帮助信息列出 mp4、avi、mov 等;formats 子命令还列出 mkv、webm、flv)。
  • video2gif 支持起始时间 -s、时长 -t、宽度 -w、帧率 -fps。

PDF

  • 合并:merge,将多个 PDF 合并为一个输出文件(实现基于 pdf-lib)。
  • 转图片:pdf2img;运行时会提示需系统安装 poppler-utils,并给出 pdftoppm 用法说明。
  • Skill 文档中还提到 PDF 拆分;converter.js 帮助里含有 split 说明,但当前主命令分发逻辑未接入该子命令,实际拆分需自行扩展或改用系统工具。

辅助

  • info:查看文件信息。
  • formats:列出工具声明支持的图片、视频扩展名。

技能在文档层面还暴露编程接口名(如 convertImage、videoToGif、mergePdf 等),与 converter.js 导出函数对应,便于 Agent 生成调用示例。

安装与启用

1. 安装 SkillHub CLI(若尚未安装)

按 SkillHub 安装说明 检查或安装 CLI:

command -v skillhub && skillhub --version

未安装时可执行完整安装脚本(文档推荐 CLI + 默认 Skill):

curl -fsSL https://skillhub-1388575217.cos.ap-guangzhou.myqcloud.com/install/install.sh | bash

2. 将 Skill 装进当前 Agent 的 skills 目录

安装时必须用 --dir 指向当前客户端识别的 skills 目录,否则默认落在 ./skills/ 可能不会被加载。常用路径(摘自官方安装文档):

  • Cursor:~/.cursor/skills/
  • Claude Code:~/.claude/skills/
  • Codex:~/.codex/skills/ 或项目下的 .agents/skills/

命令行安装示例(与 skillhub search 结果一致):

skillhub install file-converter-new --namespace user_8509461a --dir ~/.cursor/skills

也可在对话中让 AI 按 SkillHub 指引安装:

请根据 https://skillhub.cn/install/skillhub.md,安装 `@user_8509461a/file-converter-new`。

安装完成后,技能目录一般为 .../@user_8509461a/file-converter-new/,内含 SKILL.md 与 converter.js。

3. 安装 Node 依赖

进入技能目录后安装 package.json 中的依赖(sharp、fluent-ffmpeg、pdf-lib):

cd ~/.cursor/skills/@user_8509461a/file-converter-new
npm install

SKILL.md 亦给出等价写法:npm install sharp fluent-ffmpeg pdf-lib。首次运行若缺包,converter.js 会尝试在技能目录内执行 npm install <包名>。

4. 系统依赖

  • 视频转 GIF:本机需可用的 ffmpeg(fluent-ffmpeg 调用系统 ffmpeg)。
  • PDF 转图片:按技能内提示安装 poppler-utils(如 Debian/Ubuntu:sudo apt-get install poppler-utils),再使用 pdftoppm 或后续版本完善后的 pdf2img 流程。

典型用法

以下示例均来自官方 SKILL.md,在技能目录下执行。先把工作路径切到已安装的 @user_8509461a/file-converter-new。

单张图片格式转换:

node converter.js convert input.png output.jpg

批量转 JPG:

node converter.js batch ./images -f jpg

压缩并指定质量:

node converter.js compress input.png -q 80

视频转 GIF(默认从 0 秒起、时长 10 秒,可用 -t 调整):

node converter.js video2gif input.mp4 output.gif -t 10

截取片段并限制宽度:

node converter.js video2gif input.mp4 output.gif -s 5 -t 10 -w 480

合并 PDF:

node converter.js merge file1.pdf file2.pdf output.pdf

PDF 转图片(输出目录可选):

node converter.js pdf2img document.pdf ./output/

在 Agent 会话中的典型流程是:用户给出本地文件路径与目标格式 → Agent 读取 SKILL.md → 在终端执行对应 node converter.js ... → 回传输出路径或错误信息。无需配置 API Key。

适用场景与注意

适合谁

  • 需要在 Cursor、Claude Code、Codex 等支持 Skills 的客户端里,用自然语言驱动图片/WebP 优化、短视频 GIF、PDF 合并等本地批处理。
  • 已接受 Node.js 运行时,并愿意在技能目录维护 npm 依赖。

限制与注意

  • 处理的是用户机器上的文件路径,大文件或批量任务要注意磁盘空间与 ffmpeg 耗时。
  • pdf2img 当前实现以提示安装 poppler 为主,不能假设一键出图;合并 PDF 以 pdf-lib 为准,复杂版式需自行验证。
  • 与 SkillHub 上名称相近的其他「file-converter」Skill(如文本 JSON/YAML 类)坐标不同,安装时请确认命名空间 user_8509461a 与 slug file-converter-new。
  • 修改 skills 目录后,部分客户端需要重启或重新加载会话才能识别新 Skill(以各客户端文档为准)。

结尾

文件格式转换器 (File Converter) 把图片 Sharp 管线、视频 FFmpeg 转 GIF、PDF 合并等常见媒体操作收敛进一份社区 Skill,通过 SKILL.md 约束 Agent 行为,并用 converter.js 提供可复现命令。若你的 workflow 以 design-media 类本地文件处理为主,可从 SkillHub 安装 @user_8509461a/file-converter-new,配好 Node 与 ffmpeg 后即可在对话里按路径驱动转换。

官方入口:https://www.skillhub.cn/skills/user_8509461a/file-converter-new

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜