api-response-optimization · secondsky — скилл для Claude Code: ускоряет ответы API
Скилл для ИИ-кодинга, который подсказывает, как уменьшить размер ответов API, включить кэширование и сжатие. Пригодится, когда эндпоинты отвечают медленно.
npx skills add secondsky/claude-skills --skill api-response-optimization -a claude-codeЧто делает 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-code2Вручную: положить файлы
~/.claude/skills/api-response-optimization/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/api-response-optimization/
1Через Skills CLI (Vercel)
npx skills add secondsky/claude-skills --skill api-response-optimization -a codex2Вручную: положить файлы
.agents/skills/api-response-optimization/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add secondsky/claude-skills --skill api-response-optimization -a cursor2Вручную: положить файлы
.cursor/skills/api-response-optimization/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install secondsky/claude-skills api-response-optimization2Вручную: положить файлы
.github/skills/api-response-optimization/SKILL.md1Через Skills CLI (Vercel)
npx skills add secondsky/claude-skills --skill api-response-optimization -a gemini-cli2Командой платформы
gemini skills install https://github.com/secondsky/claude-skills --path plugins/api-response-optimization/skills/api-response-optimizationВручную: положить файлы
.devin/skills/api-response-optimization/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add secondsky/claude-skills --skill api-response-optimization -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в 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 от других авторов.