# aws-sdk-java-v2-core

Помогает настроить клиенты AWS SDK для Java 2.x: креды, регион, HTTP-стек, таймауты и ретраи. Пригодится, когда клиент падает на первом вызове или нужен Spring Boot бин.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 3700 установок · ★ 363
- Автор: giuseppe-trisciuoglio
- Лицензия: MIT · policy=mirror · лицензия открытая, файл — в исходнике
- Исходник: https://github.com/giuseppe-trisciuoglio/developer-kit/tree/HEAD/plugins/developer-kit-java/skills/aws-sdk-java-v2-core/SKILL.md
- Обновлён: 2026-09-10
- HTML: https://affpapa.org/nevibecode/skills/aws-sdk-java-v2-core

## Что делает

Скилл задаёт порядок сборки клиента: сначала выбираете синхронный (`S3Client`, `DynamoDbClient`) или асинхронный (`S3AsyncClient`, `SqsAsyncClient`) вариант, потом настраиваете разрешение кредов и региона, затем HTTP-клиент и лимиты. Для синхронных советует `ApacheHttpClient`, для асинхронных — `NettyNioAsyncHttpClient`. Конкретные значения таймаутов и соединений берутся из требований сервиса, готовых цифр скилл не навязывает.

По кредам по умолчанию ставит `DefaultCredentialsProvider`: локально это shared config, SSO или переменные окружения, в CI — web identity, в AWS — роли задач ECS, IRSA в EKS или instance profiles. Проверить, что всё разрешилось, предлагает вызовом `StsClient.getCallerIdentity()` на старте. Это важный шаг, потому что неверный регион или креды часто всплывают только на первом реальном запросе. В Spring Boot клиенты выносятся в `@Bean`-синглтоны и внедряются через конструктор, чтобы не создавать их в горячем пути.

Внутри есть раздел про обработку ошибок на границе интеграции: ловить `SdkException`, отличать ретраи от проблем с доступом и квотами, не писать в логи секреты. Для тестов — LocalStack, Testcontainers или песочный аккаунт, а `@PostConstruct` позволяет упасть сразу при старте, если кредов нет. Ключи и токены в исходниках держать нельзя; статические креды допустимы только для узких локальных тестов. Скилл намеренно не разбирает S3, DynamoDB и Bedrock — для них есть отдельные скиллы.

## Требования
- Работает с: AWS

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill aws-sdk-java-v2-core -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/aws-sdk-java-v2-core/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/aws-sdk-java-v2-core/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill aws-sdk-java-v2-core -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/aws-sdk-java-v2-core/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill aws-sdk-java-v2-core -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/aws-sdk-java-v2-core/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install giuseppe-trisciuoglio/developer-kit aws-sdk-java-v2-core
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/aws-sdk-java-v2-core/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill aws-sdk-java-v2-core -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/giuseppe-trisciuoglio/developer-kit --path plugins/developer-kit-java/skills/aws-sdk-java-v2-core
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/aws-sdk-java-v2-core/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add giuseppe-trisciuoglio/developer-kit --skill aws-sdk-java-v2-core -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/giuseppe-trisciuoglio/developer-kit/tree/HEAD/plugins/developer-kit-java/skills/aws-sdk-java-v2-core/SKILL.md

## Когда брать
- собрать S3-клиент с явными таймаутами и пулом соединений
- выяснить, почему клиент падает на первом вызове из-за региона или кредов
- вынести AWS-клиенты в Spring Boot бины и не плодить их на каждый запрос
- выбрать синхронный или асинхронный клиент под нагрузку
- проверить креды на старте через `getCallerIdentity`

## Примеры запросов агенту
- Настрой `S3Client` для региона eu-south-2 с `ApacheHttpClient` и таймаутами 10 и 30 секунд
- Переведи наш `SqsAsyncClient` на `NettyNioAsyncHttpClient` с конкурентностью 200
- Добавь в Spring Boot конфигурацию проверку кредов через `StsClient.getCallerIdentity()` при старте

## Похожие
- [caveman-manage](https://affpapa.org/nevibecode/skills/caveman-manage.md) — скилл · 104200 установок
- [workers-best-practices](https://affpapa.org/nevibecode/skills/cloudflare-workers-best-practices.md) — скилл · 126100 установок
- [cloudflare-email-service](https://affpapa.org/nevibecode/skills/cloudflare-email-service.md) — скилл · 102300 установок
- [firebase-basics](https://affpapa.org/nevibecode/skills/firebase-basics.md) — скилл · 14100 установок
- [cloudflare-one](https://affpapa.org/nevibecode/skills/cloudflare-one.md) — скилл · 93100 установок

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
