swift-library-design — скилл для Claude Code: дизайн Swift-библиотек
Подсказывает, как проектировать публичный API Swift-библиотек и фреймворков: протоколы, result builders, производительность.
npx skills add wendylabsinc/claude-skills --skill swift-library-design -a claude-codeЧто делает swift-library-design
Скилл включается, когда в разговоре всплывает проектирование Swift-библиотеки или фреймворка, паттерны публичного API, протокол-ориентированная архитектура с associated types, result builders и DSL, оптимизация производительности, @inlinable и @usableFromInline, noncopyable-типы, прогрессивное раскрытие API, паттерны ResponseGenerator и builder.
Внутри два справочных файла: references/api-patterns.md про дизайн протоколов, result builders, builder-паттерн, обработку ошибок и извлечение параметров, и references/performance.md про инлайнинг, noncopyable-типы, структуры данных, lock-free-паттерны и конечные автоматы. Основной текст задаёт четыре принципа: протоколы с associated types, проверки на этапе компиляции, эффективные по умолчанию API и постепенное усложнение интерфейса.
Скилл опирается на современный Swift с дженериками и async/await — на старом тулчейне примеры с some RequestContext и @resultBuilder не соберутся. Ставится одной командой через npx skills.
Какие задачи решает
- спроектировать публичный API библиотеки так, чтобы его нельзя было использовать неправильно
- собрать DSL на result builders для конфигурации middleware
- добавить поддержку нескольких типов ответа через протокол ResponseGenerator
- вынести горячие пути в
@inlinableбез потери совместимости - описать протокол с associated types и типизированной композицией
Примеры запросов агенту
- Спроектируй публичный API для Swift-библиотеки сетевого клиента
- Собери DSL на result builders, чтобы middleware добавлялись списком
- Разбери, где здесь уместен
@inlinable, а где лучше оставить обычную реализацию
Как установить swift-library-design
1Через Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-library-design -a claude-code2Вручную: положить файлы
~/.claude/skills/swift-library-design/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/swift-library-design/
1Через Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-library-design -a codex2Вручную: положить файлы
.agents/skills/swift-library-design/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-library-design -a cursor2Вручную: положить файлы
.cursor/skills/swift-library-design/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install wendylabsinc/claude-skills swift-library-design2Вручную: положить файлы
.github/skills/swift-library-design/SKILL.md1Через Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-library-design -a gemini-cli2Командой платформы
gemini skills install https://github.com/wendylabsinc/claude-skills --path swift-library-designВручную: положить файлы
.devin/skills/swift-library-design/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add wendylabsinc/claude-skills --skill swift-library-design -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о swift-library-design
Как установить swift-library-design в Claude Code?
Выполните npx skills add wendylabsinc/claude-skills --skill swift-library-design -a claude-code. Скилл окажется в ~/.claude/skills/swift-library-design/SKILL.md.
Что делает swift-library-design?
Даёт рекомендации по дизайну Swift-библиотек и фреймворков: протоколы с associated types, result builders, builder-паттерн, инлайнинг и noncopyable-типы.
Что нужно, чтобы примеры из скилла собирались?
Современный Swift с дженериками и async/await. Конструкции вроде some RequestContext и @resultBuilder на старых версиях компилятора не пройдут.