Zero zależności
npm install nic. apt-get nic. Po prostu uruchom. Brak natywnych bindingów, brak bibliotek systemowych, brak niespodzianek.
$ getwebp ./images
getwebp to najbardziej przyjazny dla AI lokalny węzeł przetwarzania obrazów na świecie. Jeden plik binarny. Zero zależności. Wyjście JSON. Działa wszędzie, gdzie uruchamia się Twój agent.
GetWebP to oparty na WASM, pozbawiony zależności optymalizator obrazów zbudowany z myślą o przepływach pracy z agentami AI. Przyjmuje ustrukturyzowane wyjście JSON, czyta ze stdin/stdout i konwertuje PNG, JPG, GIF, TIFF oraz BMP do WebP i AVIF — wszystko lokalnie, bez wysyłki do chmury i bez kluczy API. Jedno polecenie npx instaluje wszystko, czego agent AI potrzebuje do przetwarzania obrazów w pipeline'ach CI/CD, asystentach programowania lub autonomicznych przepływach pracy.
Problem
Każda zależność to potencjalny punkt awarii dla Twoich workflow AI.
Pillow wymaga skompilowanych rozszerzeń C. Sandbox agenty i ograniczone kontenery Docker odmawiają.
Różnice API v6 vs v7. Brakujące delegates. Konflikty pakietów systemowych. Twój pipeline pada o 3 rano.
Wysyłanie obrazów do zewnętrznych API oznacza ryzyko compliance, opóźnienia, limity szybkości i koszt za obraz.
Gdy środowisko jest kruche, Twój agent nie może odróżnić awarii narzędzi od prawdziwych błędów.
Rozwiązanie
getwebp jest zaprojektowany od podstaw do użytku programistycznego.
Brak runtime. Brak zależności. Brak pip, brew, apt-get. Pobierz i uruchom. Działa w Docker FROM scratch.
Każda operacja zwraca JSON możliwy do analizy maszynowej. Twój agent czyta sukces, statystyki i błędy bez analizowania ludzkiego tekstu.
Ten sam plik binarny, to samo zachowanie wszędzie. macOS, Linux, Windows, ARM, x86. Twój agent wie dokładnie czego oczekiwać.
Funkcje przyjazne AI
npm install nic. apt-get nic. Po prostu uruchom. Brak natywnych bindingów, brak bibliotek systemowych, brak niespodzianek.
$ getwebp ./images
Każda operacja zwraca strukturalne JSON. Analizuj, loguj, działaj. Idealny do wzorców użycia narzędzi LLM.
Flaga --jsonNatywne wsparcie dla potoków. Czyta ze stdin, pisze do stdout. Łącz z dowolnym poleceniem shell lub łańcuchem narzędzi AI.
Przyjazny potokomPrzetwórz 1000 obrazów jednym poleceniem. Otrzymaj jedną tablicę JSON z wynikami dla każdego pliku. Brak pętli.
1000 plików, 1 polecenie0 = sukces, niezerowy = błąd. Twój agent wie natychmiast bez analizowania wyjścia.
Czytelny dla agentaTen sam plik binarny, to samo zachowanie na macOS, Linux, Windows, ARM, x86. CI i lokalne zawsze się zgadzają.
UniwersalnyPrzykłady kodu
#!/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'Z --json każda operacja zwraca strukturalne dane, o których Twój agent może rozumować.
{ "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" }
Brak niestandardowych adapterów. Jeśli może uruchomić polecenie shell, działa z getwebp.
Works with any tool that can run a shell command
W porównaniu z innymi narzędziami do przetwarzania obrazów dla workflow programistycznych.
| Features | getwebpBest for AI | ImageMagick | Pillow | Cloudinary API | sharp (Node) |
|---|---|---|---|---|---|
| Zero zależności | |||||
| Wyjście JSON | |||||
| 100% offline/lokalnie | |||||
| Pojedynczy plik binarny | |||||
| Przewidywalne kody wyjścia | |||||
| Wsadowe wyjście tablicy JSON | |||||
| Identyczny wieloplatformowo | |||||
| Gotowy dla agentów AI |
Zmień rozmiar i kompresuj obrazy przed wysłaniem do modeli wizyjnych, aby zmniejszyć koszty tokenów o nawet 80%. getwebp obsługuje cały wsad jednym poleceniem zwracającym 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
Przestań walczyć z zależnościami.
Jedno polecenie. Zero konfiguracji. Wyjście JSON. Narzędzie obrazów, którego brakowało w Twoim stosie AI.
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.