# api-shape-explorer

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

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · ★ 4676
- Автор: zebbern
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/zebbern/claude-code-guide/tree/HEAD/skills/api-shape-explorer/SKILL.md
- Обновлён: 2026-10-24
- HTML: https://affpapa.org/nevibecode/skills/api-shape-explorer

## Что делает

Скилл опирается на идею «Design It Twice» из книги «A Philosophy of Software Design»: первая придуманная форма интерфейса редко оказывается лучшей. Сначала агент собирает требования — какую задачу решает модуль, кто его вызывает, какие операции нужны, что спрятать внутрь, а что выставить наружу.

Дальше через Task tool запускаются 3+ субагента одновременно. Каждому выдаётся своё ограничение: одному — уложиться в 1–3 метода, другому — поддержать максимум сценариев, третьему — оптимизироваться под самый частый случай, четвёртому — взять за образец конкретную библиотеку. Каждый возвращает сигнатуру, пример вызова, список скрытой сложности и свои компромиссы.

Варианты показываются по очереди, потом идёт сравнение: простота интерфейса, глубина модуля (маленький интерфейс над большой реализацией против обратного), лёгкость правильного использования и лёгкость ошибиться. Разбор идёт прозой, без таблиц. Код скилл не пишет — он только про форму интерфейса, поэтому не стоит ждать от него готовой реализации. Если запустить субагентов без разных ограничений, они выдадут похожие варианты, и вся ценность сравнения пропадёт.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add zebbern/claude-code-guide --skill api-shape-explorer -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add zebbern/claude-code-guide --skill api-shape-explorer -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add zebbern/claude-code-guide --skill api-shape-explorer -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install zebbern/claude-code-guide api-shape-explorer
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/api-shape-explorer/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add zebbern/claude-code-guide --skill api-shape-explorer -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/zebbern/claude-code-guide --path skills/api-shape-explorer
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add zebbern/claude-code-guide --skill api-shape-explorer -a opencode
```

### Claude.ai

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

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/zebbern/claude-code-guide/tree/HEAD/skills/api-shape-explorer/SKILL.md

## Когда брать
- выбрать форму интерфейса модуля до того, как написан код
- сравнить несколько подходов к API, а не остановиться на первом
- разложить требования к модулю на вопросы и зафиксировать их
- понять, что спрятать внутри модуля, а что вынести наружу
- оценить, тянет ли интерфейс эффективную реализацию

## Примеры запросов агенту
- Спроектируй интерфейс модуля кеширования через api-shape-explorer
- Прогони design it twice для API клиента оплаты
- Сравни разные формы интерфейса для модуля работы с файлами

## Похожие
- [rest-api-design](https://affpapa.org/nevibecode/skills/rest-api-design.md) — скилл · 2100 установок
- [public-grpc-api-design](https://affpapa.org/nevibecode/skills/public-grpc-api-design.md) — скилл · 7800 установок
- [public-api-design-review](https://affpapa.org/nevibecode/skills/public-api-design-review.md) — скилл · 7800 установок
- [api-designer](https://affpapa.org/nevibecode/skills/api-designer.md) — скилл · 6500 установок
- [api-design](https://affpapa.org/nevibecode/skills/api-design.md) — скилл · 5500 установок
- [rest-api-design-patterns](https://affpapa.org/nevibecode/skills/rest-api-design-patterns.md) — скилл · 525 установок

Из того же набора: [zebbern/claude-code-guide](https://affpapa.org/nevibecode/by/zebbern/claude-code-guide.md) — 12 карточек

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

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