Zero dependências
npm install nada. apt-get nada. Apenas execute. Sem bindings nativos, sem bibliotecas do sistema, sem surpresas.
$ getwebp ./images
getwebp é o nó de processamento de imagens local mais compatível com IA do mundo. Um binário. Zero dependências. Saída JSON. Funciona onde quer que seu agente execute.
A GetWebP é um otimizador de imagens sem dependências, baseado em WASM, concebido para fluxos de trabalho de agentes de IA. Aceita saída estruturada em JSON, lê a partir de stdin/stdout e converte PNG, JPG, GIF, TIFF e BMP para WebP e AVIF — tudo localmente, sem envios para a cloud e sem chaves de API. Um único comando npx instala tudo o que um agente de IA precisa para processar imagens em pipelines CI/CD, assistentes de programação ou fluxos de trabalho autónomos.
O problema
Cada dependência é um potencial ponto de falha para seus fluxos de IA.
Pillow requer extensões C compiladas. Agentes sandbox e containers Docker restritos recusam.
Diferenças de API v6 vs v7. Delegates ausentes. Conflitos de pacotes do sistema. Seu pipeline cai às 3h da manhã.
Enviar imagens para APIs externas significa risco de conformidade, latência, limites de taxa e custo por imagem.
Quando o ambiente é frágil, seu agente não consegue distinguir falhas de ferramentas de erros reais.
A solução
getwebp é projetado do zero para uso programático.
Sem runtime. Sem dependências. Sem pip, brew, apt-get. Baixe e execute. Funciona no Docker FROM scratch.
Cada operação retorna JSON analisável pela máquina. Seu agente lê sucesso, estatísticas e erros sem analisar texto humano.
Mesmo binário, mesmo comportamento, em todo lugar. macOS, Linux, Windows, ARM, x86. Seu agente sabe exatamente o que esperar.
Recursos compatíveis com IA
npm install nada. apt-get nada. Apenas execute. Sem bindings nativos, sem bibliotecas do sistema, sem surpresas.
$ getwebp ./images
Cada operação retorna JSON estruturado. Analise, registre, aja. Perfeito para padrões de uso de ferramentas LLM.
Flag --jsonNativo para pipes. Lê de stdin, escreve para stdout. Combine com qualquer comando shell ou cadeia de ferramentas IA.
Pipe-friendlyProcesse 1000 imagens em um comando. Receba um array JSON com resultados por arquivo. Sem loops.
1000 arquivos, 1 comando0 = sucesso, não-zero = falha. Seu agente sabe imediatamente sem analisar a saída.
Legível pelo agenteMesmo binário, mesmo comportamento no macOS, Linux, Windows, ARM, x86. CI e local sempre coincidem.
UniversalExemplos de código
#!/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'Com --json, cada operação retorna dados estruturados sobre os quais seu agente pode raciocinar.
{ "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" }
Sem adaptadores personalizados. Se pode executar um comando shell, funciona com getwebp.
Works with any tool that can run a shell command
Comparado com outras ferramentas de processamento de imagens para fluxos programáticos.
| Features | getwebpBest for AI | ImageMagick | Pillow | Cloudinary API | sharp (Node) |
|---|---|---|---|---|---|
| Zero dependências | |||||
| Saída JSON | |||||
| 100% offline/local | |||||
| Binário único | |||||
| Códigos de saída previsíveis | |||||
| Saída de array JSON em lote | |||||
| Idêntico multiplataforma | |||||
| Pronto para agentes IA |
Redimensione e comprima imagens antes de enviá-las a modelos de visão para reduzir custos de tokens em até 80%. getwebp lida com todo o lote com um comando que retorna 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
Pare de lutar contra dependências.
Um comando. Zero configuração. Saída JSON. A ferramenta de imagens que faltava no seu stack de IA.
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.