Không Phụ Thuộc
npm install không có gì. apt-get không có gì. Chỉ cần chạy. Không có native binding, không có thư viện hệ thống, không có bất ngờ.
$ getwebp ./images
getwebp là node xử lý ảnh cục bộ thân thiện AI nhất thế giới. Một nhị phân. Không phụ thuộc. Đầu ra JSON. Hoạt động ở bất cứ đâu agent của bạn chạy.
GetWebP là một công cụ tối ưu hóa hình ảnh không phụ thuộc, được hỗ trợ bởi WASM, xây dựng cho luồng công việc của AI agent. Nó chấp nhận đầu ra có cấu trúc JSON, đọc từ stdin/stdout và chuyển đổi PNG, JPG, GIF, TIFF cùng BMP sang WebP và AVIF — tất cả đều cục bộ, không tải lên đám mây và không cần API key. Một lệnh npx duy nhất cài đặt mọi thứ mà một AI agent cần để xử lý hình ảnh trong pipeline CI/CD, trợ lý lập trình hoặc các luồng công việc tự động.
Vấn đề
Mỗi phụ thuộc là điểm thất bại tiềm năng cho luồng làm việc AI của bạn.
Pillow yêu cầu các phần mở rộng C đã biên dịch. Các agent sandbox và container Docker bị hạn chế từ chối.
Sự khác biệt API v6 vs v7. Thiếu delegates. Xung đột gói hệ thống. Pipeline của bạn thất bại lúc 3 giờ sáng.
Gửi ảnh đến API bên ngoài có nghĩa là rủi ro tuân thủ, độ trễ, giới hạn tốc độ và chi phí mỗi ảnh.
Khi môi trường dễ vỡ, agent của bạn không thể phân biệt lỗi công cụ với lỗi thực sự.
Giải pháp
getwebp được thiết kế từ đầu để sử dụng theo chương trình.
Không runtime. Không phụ thuộc. Không pip, brew, apt-get. Tải xuống và chạy. Hoạt động trong Docker FROM scratch.
Mỗi thao tác trả về JSON có thể phân tích bởi máy. Agent của bạn đọc thành công, thống kê và lỗi mà không cần phân tích văn bản người dùng.
Cùng nhị phân, cùng hành vi, ở mọi nơi. macOS, Linux, Windows, ARM, x86. Agent của bạn biết chính xác những gì cần mong đợi.
Tính Năng Thân Thiện AI
npm install không có gì. apt-get không có gì. Chỉ cần chạy. Không có native binding, không có thư viện hệ thống, không có bất ngờ.
$ getwebp ./images
Mỗi thao tác trả về JSON có cấu trúc. Phân tích, ghi log, hành động. Hoàn hảo cho các mẫu sử dụng công cụ LLM.
Cờ --jsonNative cho pipe. Đọc từ stdin, ghi vào stdout. Kết hợp với bất kỳ lệnh shell hoặc chuỗi công cụ AI nào.
Thân thiện với pipeXử lý 1000 ảnh trong một lệnh. Nhận một mảng JSON với kết quả mỗi file. Không cần vòng lặp.
1000 file, 1 lệnh0 = thành công, khác 0 = thất bại. Agent của bạn biết ngay lập tức mà không cần phân tích đầu ra.
Agent có thể đọcCùng nhị phân, cùng hành vi trên macOS, Linux, Windows, ARM, x86. CI và cục bộ luôn khớp.
Phổ quátVí Dụ Code
#!/bin/bash# Process images and parse JSON outputRESULT=$(getwebp ./images/*.jpg --json)if [ $? -eq 0 ]; then SAVED=$(echo $RESULT | jq -r '.compressionRatio') COUNT=$(echo $RESULT | jq -r '.processed') echo "✓ Processed $COUNT files, saved $SAVED"else echo "✗ Error: $(echo $RESULT | jq -r '.error')" exit 1fiimport subprocessimport jsonresult = subprocess.run( ["getwebp", "./images", "--json"], capture_output=True, text=True)if result.returncode == 0: data = json.loads(result.stdout) print(f"✓ Processed {data['processed']} files") print(f" Saved {data['compressionRatio']} ({data['totalInputSize']} → {data['totalOutputSize']})")else: error = json.loads(result.stderr) raise RuntimeError(f"getwebp failed: {error['error']}")- name: Optimize images run: | npx getwebp@latest ./public/images \ --json > optimization-report.json SAVED=$(cat optimization-report.json | jq -r '.compressionRatio') echo "Images optimized: $SAVED smaller"- name: Upload report uses: actions/upload-artifact@v4 with: name: image-optimization-report path: optimization-report.jsonFROM node:20-alpine# getwebp is a single binary — no system deps neededRUN npx getwebp@latest --install-binary /usr/local/bin/getwebpCOPY ./images /app/imagesRUN getwebp /app/images --json > /app/result.json \ && cat /app/result.json | jq '.compressionRatio'Khi truyền --json, mỗi thao tác trả về dữ liệu có cấu trúc mà agent của bạn có thể lý luận.
{ "success": true, "operation": "convert", "input": { "file": "hero.jpg", "size": "1.2 MB", "format": "JPEG" }, "output": { "file": "hero.webp", "size": "142 KB", "format": "WebP" }, "saved": "88%", "duration": "0.3s" }
Không cần bộ điều hợp tùy chỉnh. Nếu có thể chạy lệnh shell, hoạt động được với getwebp.
Works with any tool that can run a shell command
So sánh với các công cụ xử lý ảnh khác cho luồng làm việc theo chương trình.
| Features | getwebpBest for AI | ImageMagick | Pillow | Cloudinary API | sharp (Node) |
|---|---|---|---|---|---|
| Không phụ thuộc | |||||
| Đầu ra JSON | |||||
| 100% offline/cục bộ | |||||
| Nhị phân đơn | |||||
| Mã thoát có thể đoán trước | |||||
| Đầu ra mảng JSON hàng loạt | |||||
| Đồng nhất đa nền tảng | |||||
| Sẵn sàng cho AI agent |
Thay đổi kích thước và nén ảnh trước khi gửi đến các mô hình thị giác để giảm chi phí token lên đến 80%. getwebp xử lý toàn bộ batch bằng một lệnh trả về JSON.
Workflow
Example
# Reduce image size before sending to GPT-4V
result = subprocess.run([
"getwebp", image_path,
"--resize", "1024x1024",
"--json"
], capture_output=True, text=True)
data = json.loads(result.stdout)
# Tokens saved: ~80% for typical product photosFAQ
Ngừng Chiến Đấu Với Phụ Thuộc.
Một lệnh. Không cài đặt. Đầu ra JSON. Công cụ ảnh mà stack AI của bạn đang thiếu.
No signup. No credit card. Works offline.
Every GetWebP product runs on the same WASM converter — pick the surface that fits your workflow.
Model Context Protocol server that gives Claude, Cursor, and Windsurf local image conversion.
Zero-dependency command-line converter. One npx command, runs in any terminal or CI pipeline.
Local-first integration surfaces — CLI in your shell, MCP in your agent. Zero AWS bill.