К основному содержанию
скилл CX Codex

tigris-image-optimization — скилл для Claude Code: ресайз и CDN

Скилл для работы с картинками в Tigris: режет варианты при загрузке, отдаёт их через публичный бакет и подсказывает настройки под ваш фреймворк.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add tigrisdata/skills --skill tigris-image-optimization -a claude-code
Открыть на GitHub

Что делает tigris-image-optimization

Скилл описывает три подхода к обработке изображений и говорит, когда какой брать. Варианты при загрузке — для заранее известных размеров: аватар, превью, обложка. Обработка по запросу — когда вариаций много. Ресайз на клиенте — чтобы не гнать полный файл на сервер. Советует начать с первого: храните каждую версию отдельным объектом вроде avatars/user-123-thumb.jpg.

Внутри — разбор под шесть фреймворков, каждый в своём файле: ./resources/nextjs.md, remix.md, express.md, rails.md, django.md, laravel.md. Для Next.js это конфиг next/image и обработка через Sharp, для Express — middleware с Multer, для Rails — варианты Active Storage, для Django — django-imagekit и Pillow, для Laravel — Intervention Image. Ставить ничего дополнительно не нужно: скилл читает нужный файл, когда вы просите про конкретный стек.

Отдача идёт через публичные бакеты Tigris, отдельный CDN настраивать не надо. В правилах прямо сказано: для картинок, которые видят пользователи, ставьте access: "public", иначе CDN не включится. Ещё требуют явный contentType и советуют WebP или AVIF. Вот тут легко ошибиться — если вы отдаёте превью, а храните только оригиналы, скилл это отдельно запрещает. Для имён с хешем содержимого вроде hero-abc123.jpg можно ставить долгий кеш, для изменяемых путей — короткий TTL или ETag.

Какие задачи решает

  • нарезать превью и обложки при загрузке файла
  • отдавать адаптивные картинки под разную ширину экрана
  • перевести проект на WebP или AVIF без ручной возни
  • подключить CDN к изображениям без отдельного сервиса
  • разобраться с вариантами Active Storage или django-imagekit

Примеры запросов агенту

  • Добавь обработку картинок при загрузке через Tigris: превью 100x100 и 400x400
  • Покажи, как настроить next/image с Sharp для картинок из Tigris
  • Сделай middleware на Express, который режет варианты через Sharp и Multer

Как установить tigris-image-optimization

1Через Skills CLI (Vercel)

npx skills add tigrisdata/skills --skill tigris-image-optimization -a claude-code

2Вручную: положить файлы

~/.claude/skills/tigris-image-optimization/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/tigris-image-optimization/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора5

Похожие

netlify-image-cdn netlify Помогает настроить трансформацию изображений на лету через эндпоинт Netlify Image CDN. Пригодится при сжатии картинок и генерации плейсхолдеров. CX Codex +1 3 000установок image-optimization kostja94 Скилл помогает настроить адаптивные изображения, WebP и разметку для поиска Google. Пригодится при отладке LCP и подготовке графики к индексации. CX Codex +1 1 100установок baoyu-compress-image JimLiu Сжимает изображения в WebP или PNG через системные утилиты вроде sips и cwebp. Пригодится для быстрой оптимизации картинок прямо в репозитории проекта. CX Codex +1 28 200установок image-processing jezweb Ресайз, обрезка полей, конвертация в WebP и PNG, тумбнейлы и OG-картинки. Всё через CLI img-process на Pillow, без ImageMagick. CX Codex +1 2 400установок setup-cdn-optimization davila7 Слэш-команда разбирает трафик и типы контента, затем настраивает CDN: кэш, сжатие, картинки, инвалидацию. 218установок image coreyhaines31 Скилл для маркетинговых изображений: генерация через ИИ, правка готовых картинок, подбор инструмента и оптимизация под веб. CX Codex +1 87 300установок

Рядом в теме «Фронтенд и UI»

Всё по теме «Фронтенд и UI» →

Вопросы о tigris-image-optimization

Как установить tigris-image-optimization в Claude?

Выполните npx skills add tigrisdata/skills --skill tigris-image-optimization -a claude-code. Файл скилла появится по пути ~/.claude/skills/tigris-image-optimization/SKILL.md.

Что делает tigris-image-optimization?

Помогает ресайзить, обрезать и оптимизировать изображения в Tigris: генерация превью при загрузке, адаптивная отдача, настройки кеша. Отдельно разобраны Next.js, Remix, Express, Rails, Django и Laravel.

Нужен ли отдельный CDN?

Нет. Публичные бакеты Tigris сами отдают файлы с ближайшего edge-узла, но только если у объекта стоит access: "public".

Исходный текст

SKILL.md · MIT
---
name: tigris-image-optimization
description: Use when resizing images, generating thumbnails, serving responsive images, or optimizing image delivery with Tigris — covers Next.js, Remix, Rails, Django, Laravel, Express
---

# Tigris Image Optimization

Resize, crop, and optimize images stored in Tigris. Generate thumbnails on upload, serve responsive images, and leverage Tigris's global CDN for fast delivery.

## Strategy Overview

| Approach | When to Use | Pros | Cons |
|----------|------------|------|------|
| Process on upload | Thumbnails, fixed sizes | Fast serving, predictable | Storage cost per variant |
| Process on request | Many size variations | Flexible, less storage | Latency on first request |
| Client-side resize | Before upload | Saves bandwidth, fast upload | Less control over quality |

**Recommended:** Process on upload for known sizes (avatar, thumbnail, cover). Use public buckets for CDN delivery — Tigris serves public files from the nearest global edge automatically.

---

## Upload-Time Processing (General Pattern)

Generate variants when a file is uploaded, store each variant as a separate object:

```
avatars/user-123.jpg          # original
avatars/user-123-thumb.jpg    # 100x100
avatars/user-123-medium.jpg   # 400x400
avatars/user-123-large.jpg    # 800x800
```

Use `access: "public"` for images that need fast, CDN-backed delivery.

---

## Framework Guides

Read the resource file for your framework:

- **Next.js** — Read `./resources/nextjs.md` for next/image config and Sharp processing
- **Remix** — Read `./resources/remix.md` for Sharp in action functions and responsive srcset
- **Express** — Read `./resources/express.md` for Sharp middleware with Multer
- **Rails** — Read `./resources/rails.md` for Active Storage variants
- **Django** — Read `./resources/django.md` for django-imagekit and Pillow processing
- **Laravel** — Read `./resources/laravel.md` for Intervention Image

---

## CDN Delivery

Tigris public buckets serve files from the nearest global edge — no separate CDN setup needed.

**Cache headers for images:**

```typescript
await put("images/hero.jpg", buffer, {
  access: "public",
  contentType: "image/jpeg",
});
```

For immutable content-hashed filenames (e.g., `hero-abc123.jpg`), use long cache times. For mutable paths, use shorter TTLs or ETags.

---

## Critical Rules

**Always:** Use `access: "public"` for images served to users (enables CDN) | Generate thumbnails at upload time for known sizes | Use WebP/AVIF for smaller file sizes | Set explicit `contentType`

**Never:** Process images on every request without caching | Store only originals if you always serve thumbnails | Resize in the browser after downloading full-size images

---

## Related Skills

- **tigris-file-uploads** — Full upload patterns per framework
- **tigris-egress-optimizer** — Reduce bandwidth costs from image serving

## Official Documentation

- Tigris SDK: https://www.tigrisdata.com/docs/sdks/tigris/
- Sharp: https://sharp.pixelplumbing.com/

© tigrisdata · MIT · tigrisdata/skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой