v1.0 现已发布

图片优化,开箱即用。随处运行。

无需 C++ 绑定,无需原生依赖。即装即用——在你的终端、CI 流水线,或 AI Agent 的工具箱中。

GetWebP CLI 是一款零依赖、由 WASM 驱动的命令行图像优化器,可将 PNG、JPG、GIF、TIFF 和 BMP 转换为 WebP 和 AVIF。它完全在您的机器上运行,没有云上传、没有原生绑定、没有隐私权衡。一条 npx 命令即可安装全部 — 适用于终端、CI/CD 流水线和 AI 代理工具调用。

npx getwebp@latest ./images

告别原生依赖的烦恼。

PackageX

无需 C++ 绑定

无需 python、make 或 g++。一条 npx 命令即可安装,在任何运行 Node.js 的环境中均可使用。

Box

单文件 / 纯 WASM

约 5MB 的 WASM 引擎,零原生依赖。可在 Docker Alpine、CI Runner 和无服务器函数中运行。

Braces

结构化 JSON 输出

专为流水线和 AI Agent 设计。添加 --json 参数即可获得结构化结果,完美适配脚本和自动化场景。

面向程序化使用的结构化输出

使用 --json 切换到 AI 模式,获取机器可读的输出。每个文件的压缩比、尺寸和状态——全部以结构化 JSON 格式呈现,你的脚本和 Agent 无需解析界面文本即可直接使用。

CLI 输出示例:普通模式与 AI 模式

普通模式
# Activate Pro license
$ getwebp auth XXXX-XXXX-XXXX-ABCD
Verifying license...
 Activated! Pro plan unlocked.

# Convert a directory of images (Pro: recursive, concurrent)
$ getwebp ./images -o ./images/webp -q 85
 hero.jpg
 banner.png
 product-shot.jpg

Done: 3 succeeded, 0 failed
Avg saved: 34.2%

# Check current license status
$ getwebp status
Version    : 1.0.1
Mode       : Pro
License    : xxxx-xxxx-xxxx-ABCD
Expires    : 2026-12-31
Devices    : 1 / 3 used
AI 模式(JSON 输出)
// $ getwebp ./images -o ./images/webp -q 85 --json
// One JSON object per line (NDJSON). First line: version preamble.
{"@timestamp":"2026-04-12T10:00:00.000Z","@level":"info","@message":"GetWebP CLI 1.3.0","@module":"getwebp.cli","type":"version","data":{"getwebp":"1.3.0","ui":"1"}}
// Last line: convert.completed summary with all results.
{"@timestamp":"2026-04-12T10:00:01.234Z","@level":"info","@message":"Converted 3/3 files","@module":"getwebp.convert","type":"convert.completed","data":{
  "processed": 3,
  "successCount": 3,
  "failedCount": 0,
  "results": [
    {
      "file": "images/hero.jpg",
      "outputPath": "/abs/images/webp/hero.webp",
      "originalSize": 204800,
      "newSize": 134144,
      "savedRatio": 0.345,
      "saved": "34.5%",
      "quality": 82,
      "qualityMode": "auto",
      "status": "success"
    },
    {
      "file": "images/banner.png",
      "outputPath": "/abs/images/webp/banner.webp",
      "originalSize": 512000,
      "newSize": 327680,
      "savedRatio": 0.36,
      "saved": "36.0%",
      "quality": 85,
      "qualityMode": "auto",
      "status": "success"
    },
    {
      "file": "images/product-shot.jpg",
      "outputPath": "/abs/images/webp/product-shot.webp",
      "originalSize": 163840,
      "newSize": 102400,
      "savedRatio": 0.375,
      "saved": "37.5%",
      "quality": 80,
      "qualityMode": "auto",
      "status": "success"
    }
  ]
}}

无缝融入你的工作流

name: Optimize Images
on:
  push:
    paths:
      - 'public/images/**'
jobs:
  optimize:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - name: Install getwebp CLI
        run: npm install -g getwebp
      - name: Convert images to WebP
        run: |
          getwebp ./public/images --json > report.ndjson
          # Check for failures: extract convert.completed and assert failedCount == 0
          grep '"convert.completed"' report.ndjson |             jq -e '.data.failedCount == 0'
      - name: Upload NDJSON report
        uses: actions/upload-artifact@v4
        with:
          name: webp-report
          path: report.ndjson

免费版适合临时使用,专业版专为流水线而生。

功能免费版专业版
单目录转换
有损 / 无损控制
无限量递归处理(-r)
多线程并发
无限量 JSON 输出(--json)
监听模式(--watch)

开发者常见问题

是的,安装后完全离线运行。WASM 引擎完全在本机执行。许可证验证在激活时会发起一次网络请求,但图片转换本身从不接触互联网。

支持。由于基于 Node.js 上的纯 WASM 运行,在 macOS(Intel + Apple Silicon)、Linux(x64 + ARM64)和 Windows(x64)上表现完全一致,无需平台专属二进制文件。

Sharp 是一个优秀的库,但需要编译原生的 libvips 绑定,在 Alpine Docker 和无服务器环境中常常失败。getwebp 使用纯 WASM 引擎——无需编译、无需 gyp、无原生依赖。它也以 CLI 为主,在 Shell 脚本和 CI 中使用极为简便,无需编写 Node.js 代码。

ImageMagick 是系统级工具,需要单独安装(apt-get、brew),随操作系统版本而异,且没有结构化输出。getwebp 是自包含的 Node.js 包,在任何环境中行为一致,并原生支持 JSON 输出,便于自动化。

可以。单个 Pro 许可证最多可在 5 台设备上激活(CLI),并覆盖最多 3 个 WordPress 站点。如需更多授权,欢迎联系我们,我们会为您提供解决方案。