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

api-response-optimization · secondsky — скилл для Claude Code: ускоряет ответы API

Скилл для ИИ-кодинга, который подсказывает, как уменьшить размер ответов API, включить кэширование и сжатие. Пригодится, когда эндпоинты отвечают медленно.

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

Что делает api-response-optimization

Скилл разбирает три вещи: выборку полей, HTTP-кэширование и сжатие ответов. Для каждого даёт пример на JavaScript. Sparse fieldsets позволяют клиенту запросить только нужные поля через параметр fields. Кэширование строится на заголовках ETag и Cache-Control, а при совпадении if-none-match сервер отдаёт 304 без тела.

Сжатие подключается через пакет compression с фильтром по заголовку x-no-compression и уровнем 6. Внутри есть чек-лист: убрать лишние поля, добавить ETag/Last-Modified, включить gzip или brotli, использовать пагинацию, подгружать связи заранее, чтобы не ловить N+1, и следить за метриками через APM. Ориентиры по производительности тоже приведены — например, ответ меньше 100 мс вместо 500 мс.

Скилл советует профилировать до оптимизации, а не после. Это важно: без замеров легко сжать не тот участок и получить рост нагрузки на CPU. Агрессивный кэш стоит ставить только для неизменяемых ресурсов, для часто меняющихся данных нужен короткий TTL и сброс кэша при записи.

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

  • уменьшить размер JSON-ответа, отдавая только запрошенные поля
  • включить ETag и отдавать 304 вместо повторной передачи тела
  • подключить gzip или brotli к ответам больше 1KB
  • убрать N+1 запросы через предварительную загрузку связей
  • собрать чек-лист проверок перед релизом эндпоинта

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

  • пройдись по этому эндпоинту и добавь sparse fieldsets
  • включи ETag и Cache-Control для карточки товара
  • проверь ответы API на N+1 и предложи, что кэшировать

Как установить api-response-optimization

1Через Skills CLI (Vercel)

npx skills add secondsky/claude-skills --skill api-response-optimization -a claude-code

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

~/.claude/skills/api-response-optimization/SKILL.md

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

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

Вопросы о api-response-optimization

Как установить api-response-optimization в Claude?

Выполните npx skills add secondsky/claude-skills --skill api-response-optimization -a claude-code. После этого файл скилла появится по пути ~/.claude/skills/api-response-optimization/SKILL.md.

Что делает api-response-optimization?

Показывает, как сократить тело ответа, настроить HTTP-кэш и сжатие. Даёт примеры кода и чек-лист оптимизации.

Для каких платформ подходит скилл?

Кроме Claude он ставится в Codex, Cursor, GitHub Copilot, Gemini CLI и OpenCode — у каждой платформы своя команда установки.

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

SKILL.md · MIT
---
name: api-response-optimization
description: Optimizes API performance through payload reduction, caching strategies, and compression techniques. Use when improving API response times, reducing bandwidth usage, or implementing efficient caching.
license: MIT
---

# API Response Optimization

Reduce payload sizes, implement caching, and enable compression for faster APIs.

## Sparse Fieldsets

```javascript
// Allow clients to select fields: GET /users?fields=id,name,email
app.get('/users', async (req, res) => {
  const fields = req.query.fields?.split(',') || null;
  const users = await User.find({}, fields?.join(' '));
  res.json(users);
});
```

## HTTP Caching Headers

```javascript
app.get('/products/:id', async (req, res) => {
  const product = await Product.findById(req.params.id);
  const etag = crypto.createHash('md5').update(JSON.stringify(product)).digest('hex');

  if (req.headers['if-none-match'] === etag) {
    return res.status(304).end();
  }

  res.set({
    'Cache-Control': 'public, max-age=3600',
    'ETag': etag
  });
  res.json(product);
});
```

## Response Compression

```javascript
const compression = require('compression');

app.use(compression({
  filter: (req, res) => {
    if (req.headers['x-no-compression']) return false;
    return compression.filter(req, res);
  },
  level: 6  // Balance between speed and compression
}));
```

## Performance Targets

| Metric | Target |
|--------|--------|
| Response time | <100ms (from 500ms) |
| Payload size | <50KB (from 500KB) |
| Server CPU | <30% (from 80%) |

## Optimization Checklist

- [ ] Remove sensitive/unnecessary fields from responses
- [ ] Implement sparse fieldsets
- [ ] Add ETag/Last-Modified headers
- [ ] Enable gzip/brotli compression
- [ ] Use pagination for collections
- [ ] Eager load to prevent N+1 queries
- [ ] Monitor with APM tools

## Best Practices

- Cache immutable resources aggressively
- Use short TTL for frequently changing data
- Invalidate cache on writes
- Compress responses >1KB
- Profile before optimizing

© secondsky · MIT · secondsky/claude-skills

Похожие скиллы

Всё по теме «Бэкенд и API» →

Сначала — api-response-optimization от других авторов.

api-response-optimization aj-geddes Скилл для ИИ-кодинга, который помогает сократить время ответа API: кэширование, сжатие и чистые payload'ы. CX Codex +1 484установок context-optimization muratcankoylan Расширяет полезную ёмкость окна контекста через маскировку вывода инструментов, переиспользование KV-кеша, сжатие и разбиение задач между субагентами. CX Codex +1 356установок image-optimization aj-geddes Скилл подсказывает агенту, как сжать изображения и перевести их в современные форматы. Пригодится перед деплоем, когда страница тормозит на мобильных сетях. CX Codex +1 656установок performance-optimization Mindrally Набор правил для веб-производительности: серверный рендеринг, CSS, JavaScript, ассеты и кэш. Полезен, когда агент пишет фронтенд и вы хотите задать ему планку. CX Codex +1 848установок web-performance-optimization aj-geddes Скилл для оптимизации веб-приложений: разбиение бандла, ленивая загрузка, кэширование, сжатие и мониторинг. Пригодится, когда страницы грузятся медленно. CX Codex +1 482установок setup-cdn-optimization davila7 Слэш-команда разбирает трафик и типы контента, затем настраивает CDN: кэш, сжатие, картинки, инвалидацию. 218установок easyeda-api JLCEDA Управляет EasyEDA через API: работает с платами, схемами, библиотеками и проектами. Нужен для отладки и разработки расширений в запущенном клиенте. CX Codex +1 610установок

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

mobile-app-debugging Скилл для отладки iOS, Android и кроссплатформенных приложений: падения, утечки памяти, просадки FPS, сетевые проблемы. CX Codex +1 428установок websocket-implementation Скилл для агента, который пишет сервер и клиент WebSocket: комнаты, переподключение, масштабирование через Redis. CX Codex +1 425установок root-cause-tracing Ведёт агента назад по стеку вызовов, пока не найдётся исходный триггер ошибки. Пригодится, когда падение случается глубоко в коде, а не на входе. CX Codex +1 426установок recommendation-engine Скилл для построения рекомендательных систем: коллаборативная фильтрация, матричная факторизация, гибридные подходы. Пригодится, когда нужны персональные подборки товаров или контента. CX Codex +1 423установок api-filtering-sorting Скилл для ИИ-агента, который помогает собрать фильтрацию и сортировку в API: разбор query-параметров, валидация, защита от инъекций. CX Codex +1 418установок bun-drizzle-integration Скилл подсказывает агенту, как связать Drizzle ORM с драйвером bun:sqlite: схема, миграции, CRUD и транзакции в одном месте. CX Codex +1 420установок drizzle-orm-d1 Скилл для работы с Cloudflare D1 через Drizzle ORM: схемы, типизированные запросы, миграции Drizzle Kit и разбор типовых ошибок D1. CX Codex +1 416установок push-notification-setup Скилл проводит агента по настройке пуш-уведомлений через Firebase Cloud Messaging и нативные сервисы. Пригодится, когда добавляешь уведомления в приложение или разбираешься с фоновыми сообщениями. CX Codex +1 418установок

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

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