闲社服务运行正常AI智能体自动化平台
f

文件压缩

技能标识:file-compression

Compress files to reduce storage and transfer size. Use this skill when users ask to shrink PDFs or images, optimize upload/share size, or balance quality and size. Supports PDF compression and image compression with Python-first workflows plus Node.js fallback when Python dependencies are unavailable.

作者:admin | 来源记录:ClawHub
登记来源
ClawHub
版本
V 1.0.1
检测标记
后台标记通过
免费
免费获取
2
收藏
来源与检测标记为平台登记信息,并不代表已展示可复核的检测报告。使用前请核对版本、依赖和所需权限,建议先在隔离环境中运行。
概述
安装方式
版本历史

文件压缩

文件压缩

使用Python优先工作流和Node.js备用工作流压缩文件。

支持的文件类型

  • - PDF:.pdf
  • 图片:.jpg、.jpeg、.png、.webp

本技能可执行的操作

  • - 使用预设质量级别压缩PDF。
  • 使用质量/尺寸/格式控制压缩图片。
  • 在缺少依赖项时自动切换后端。
  • 检测不良压缩结果并使用更优策略重试。

安装规范(运行前)

所需二进制文件:

  • - python3(建议 >= 3.8)
  • node
  • gs(Ghostscript,PDF Ghostscript路径必需)

Python安装规范:

bash
python3 -m pip install -r {baseDir}/requirements.txt

Node安装规范:

bash
cd {baseDir}
npm install

Ghostscript安装示例:

  • - macOS:brew install ghostscript
  • Ubuntu/Debian:sudo apt-get update && sudo apt-get install -y ghostscript

安全提示:

  • - 在每次安装命令前向用户说明正在安装第三方包。
  • 如果安装失败,报告失败的命令并切换到可用的备用后端。

CLI选项速查表

PDF(scripts/compress_pdf.py):

  • - --preset screen|ebook|printer|prepress
  • --strategy auto|ghostscript|pikepdf
  • --remove-metadata
  • --no-linearize
  • --overwrite

PDF Node(scripts/compresspdfnode.mjs):

  • - --preset screen|ebook|printer|prepress

图片(scripts/compress_image.py):

  • - --quality <1-100>
  • --format keep|jpeg|png|webp
  • --max-width
  • --max-height
  • --strategy auto|pillow|node
  • --overwrite

图片 Node(scripts/compressimagenode.mjs):

  • - --quality <1-100>
  • --format keep|jpeg|png|webp
  • --max-width
  • --max-height

示例集(Python + Node)

PDF默认:

bash
python {baseDir}/scripts/compress_pdf.py in.pdf out.pdf

PDF激进压缩:

bash
python {baseDir}/scripts/compress_pdf.py in.pdf out.pdf --preset screen --strategy ghostscript

使用pikepdf压缩PDF:

bash
python {baseDir}/scripts/compress_pdf.py in.pdf out.pdf --strategy pikepdf --remove-metadata

通过Node压缩PDF:

bash
node {baseDir}/scripts/compresspdfnode.mjs in.pdf out.pdf --preset ebook

图片默认:

bash
python {baseDir}/scripts/compress_image.py in.jpg out.jpg --quality 75

图片转换+调整尺寸:

bash
python {baseDir}/scripts/compress_image.py in.png out.webp --format webp --quality 72 --max-width 1920

强制使用Node后端处理图片:

bash
python {baseDir}/scripts/compress_image.py in.jpg out.jpg --strategy node --quality 70

直接使用Node处理图片:

bash
node {baseDir}/scripts/compressimagenode.mjs in.jpg out.jpg --quality 70 --max-width 1600

环境与备用机制

按以下顺序检查并安装:

  1. 1. Python:python3 --version(备用:python --version)
  2. Node:node --version
  3. Ghostscript:gs --version(PDF Ghostscript路径必需)
  4. 需要时安装Python依赖:
- pip install pikepdf - pip install pillow
  1. 5. 需要时安装Node依赖:
- npm install

备用策略:

  • - PDF:ghostscript -> pikepdf -> node-ghostscript
  • 图片:pillow -> node-sharp

如果python3.8+不可用,尝试python3.11/3.10/3.9/3.8;如果仍被阻止,尽可能使用Node流程。

执行透明度

始终沟通每一步:

  1. 1. 告知用户正在检查或运行的内容。
  2. 在执行前显示确切的命令。
  3. 对于慢速步骤(pip install、npm install、大型Ghostscript任务),说明正在等待。
  4. 每一步后,报告结果和下一步操作。

不良结果恢复

当outputsize >= inputsize时,不要停止:

  1. 1. 报告精确的压缩前后数值和压缩比。
  2. 解释可能的原因:
- PDF:已优化、扫描图像内容、元数据开销、预设不合适。 - 图片:格式转换不合适、质量过高、小文件开销。
  1. 3. 使用替代策略重试:
- PDF:ebook -> screen,然后切换后端。 - 图片:降低质量、切换后端、转换为webp、可选调整尺寸。
  1. 4. 返回最佳尝试结果并说明由哪个命令生成。

代理响应契约

每次压缩任务后,始终返回:

  1. 1. 输出绝对路径。
  2. 从 <压缩前大小> 到 <压缩后大小>。
  3. 节省 <差值大小>(<比例>%)。
  4. 使用的后端。

标签

skill ai

通过对话安装

以下为平台配置的接入选项,并非逐项实测通过。能否安装取决于客户端支持、技能来源和运行环境:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 file-compression-1776301988 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 file-compression-1776301988 技能

通过命令行安装

skillhub install file-compression-1776301988

下载

⬇ 下载 file-compression v1.0.1(免费)

文件大小: 10.52 KB | 发布时间: 2026-4-16 17:09

v1.0.1 最新 2026-4-16 17:09
- Added requirements.txt to specify Python dependencies.
- Enhanced SKILL.md with a metadata block declaring required binaries and packages.
- Added explicit installation instructions for Python, Node, and Ghostscript.
- Included safety notes for install commands and guidance on handling installation failures.
- Existing CLI options, fallback logic, and reporting contract remain unchanged.
返回顶部