FWC SwiftUI Skills
Два скилла для SwiftUI: нативный Liquid Glass для iOS 26 и адаптивная верстка под складной iPhone Duo без отдельной версии
- 454 ★ репозитория
- Последний коммит
- MIT
Минимальный доступ
Почему такой уровень
- Скиллы состоят из текстовых инструкций и справочников, скриптов и сетевых вызовов в них нет
- Агент правит исходники SwiftUI в вашем проекте, поэтому изменения стоит смотреть в `git diff`
Установка
- Работает в
В терминале, через SkillFoxx CLI
npx skillfoxx add skills/fwc-swiftui-skillsОпределит агенты на машине, покажет уровень доступа и зафиксирует версию.
Другие способы установки
Доступ и проверки
Как мы проверяемМинимальный доступИнструмент ничего не запускает и не ходит в сеть.
- Скиллы состоят из текстовых инструкций и справочников, скриптов и сетевых вызовов в них нет
- Агент правит исходники SwiftUI в вашем проекте, поэтому изменения стоит смотреть в `git diff`
Это чужой код. Посмотрите файлы в репозитории перед установкой.
Что делает
Набор из двух скиллов для агентов, которые пишут и проверяют интерфейсы на SwiftUI. Первый, swiftui-liquid-glass, отправляет агента к нативным API Liquid Glass из iOS 26 и запрещает собирать эффект вручную из материалов, размытия и теней. Скилл задает правила для кнопок `.glass` и `.glassProminent`, формы через `.buttonBorderShape()`, группировки в `GlassEffectContainer`, нижних панелей через `.safeAreaBar(.bottom)` и панелей инструментов без стеклянной подложки. Второй скилл, swiftui-iphone-duo, ведет адаптацию под складной iPhone Duo (iOS 27.1 SDK). Сначала агент делает интерфейс адаптивным при любой ширине и высоте окна: `NavigationSplitView`, `ViewThatFits`, `AnyLayout`, адаптивные сетки. Только после этого он добавляет возможности Duo: зарезервированные области у сгиба, `ArrangementView`, вертикальные панели, `onHingeChange` и `CameraCaptureAccessory`. Каждый скилл лежит в своей папке в `skills/` вместе с файлом `reference.md`, в котором собраны подробные правила и примеры. Оба скилла работают в двух режимах: проверяют существующий код по чек-листу и вносят правки в новый.
Для кого. iOS-разработчикам на SwiftUI, которые переводят приложение на Liquid Glass или готовят его к складному iPhone Duo и поручают агенту ревью или правки.
Подходит, если
- Приложение переходит на iOS 26, и кнопки с самодельным размытием надо заменить нативным стеклом
- Нижняя панель действий лежит в `VStack` с `.overlay()`, а стекло рядом со списком ведет себя странно
- В коде разветвления по `UIDevice`, `UIScreen.main` или ориентации, и верстку надо сделать зависимой от размера окна
- Список и детали пора перевести на `NavigationSplitView` с сохранением выбранного элемента
- Перед сборкой на iOS 27.1 SDK нужен обзор мест, где контент попадет на сгиб
Не подходит, если
- Проект на UIKit или кроссплатформенном фреймворке: правила написаны под SwiftUI
- Нужны общие советы по архитектуре, состоянию и производительности SwiftUI: для этого в каталоге есть SwiftUI Expert Skill
- Приложение держит поддержку iOS ниже 26 без запасных вариантов: стекло работает только на iOS 26 и новее
- Нужен отдельный дизайн под Duo: скилл прямо советует так не делать
Пример запроса к агенту
Проверь экран настроек по скиллу swiftui-liquid-glass: найди самодельное размытие, кнопки без нативного стиля и стекло внутри спискаОграничения
Оба скилла описывают платформу в связке с версиями SDK: Liquid Glass требует iOS 26 или новее, возможности Duo привязаны к Xcode 27.1 и iOS 27.1 SDK. Для старых версий скилл просит запасные ветки через `#available`.
Поведение Duo автор называет непроверяемым без устройства: поэтому скилл не предсказывает координаты сгиба и не добавляет ветки только под Duo. Размеры и позы приходится смотреть самому в Device Hub.
Скиллы проверяют и правят код по правилам, но интерфейс не запускают и скриншотов не делают. Итог все равно нужно открыть в симуляторе. Последний коммит в репозитории датирован октябрем 2026 года.
Как отключить. Удалите папки swiftui-liquid-glass и swiftui-iphone-duo из каталога скиллов вашего агента, например из `~/.claude/skills/` или `.agents/skills/` в проекте. Агент перестанет их подхватывать в новых сессиях.
Частые вопросы
Можно ли поставить только один скилл из набора?
Да. Команда `npx skills add FloWritesCode/fwc-swiftui-skills --skill swiftui-liquid-glass` копирует один скилл. Вручную достаточно перенести его папку из `skills/` в каталог скиллов агента.
Почему скилл запрещает стекло внутри списка и ScrollView?
Правило скилла: стеклянные элементы не кладут в прокручиваемые контейнеры, будь то ScrollView, List или строки Form. Там используют сплошной фон или материал. Стекло остается для панелей, кнопок и закрепленных поверхностей.
Нужно ли делать для Duo отдельный интерфейс?
Нет. Скилл swiftui-iphone-duo требует сначала сделать интерфейс адаптивным при любых размерах окна и добавлять возможности Duo, только когда сгиб или вторая панель дают заметную пользу.
Что нужно для Liquid Glass в проекте?
Xcode с SDK iOS 26 и новее. Для старых систем скилл добавляет проверку `#available(iOS 26, *)` и запасной вариант без стекла.
Чем отличается swiftui-iphone-duo от обычной адаптивной верстки?
Он сам по себе ее не заменяет. Скилл ведет агента по порядку: адаптивная верстка и навигация, панели и вкладки, безопасные области у сгиба, и только потом раскладки и жесты Duo. Разветвления по `UIDevice` или `isDuo` он помечает как ошибку.
Обсуждение
Вопросов и отзывов пока нет.
Похожие
СкиллыСкилл добавляет агенту официальные заметки Apple по SwiftUI, которые установщик достает из вашего Xcode
Скиллы для разработки под Apple: справочники по SwiftUI, UIKit и Liquid Glass, гайды по Swift 6 и маршрутизатор для задач iOS 26
Скилл с практиками SwiftUI: состояние, композиция view, производительность, новые API, Liquid Glass и разбор трейсов Instruments
SwiftUI Design Skill
swiftui-design-skill
Скилл дизайна интерфейсов на SwiftUI: компилируемый код, токены, паттерны и шесть правил против небрежности ИИ. Установка одной командой npx skills
Набор скиллов по iOS 26+, Swift 6.3 и SwiftUI: агент получает знания по современным фреймворкам Apple
Скиллы с материалами из Xcode помогают агенту проверять SwiftUI, обновлять тесты и учитывать настройки защиты
Сравнение с похожими
Карточки с тем же главным запросом: чем они отличаются.
| Инструмент | Официальный | Звезды репозитория | Главное отличие |
|---|---|---|---|
| FWC SwiftUI Skills (эта карточка) | нет | 454 | |
| SwiftUI Expert Skill | нет | 3 830 | общий скилл по SwiftUI: состояние, производительность, API; здесь только Liquid Glass и Duo |
| SwiftUI Pro | нет | 6 479 | ревью SwiftUI по современным API и поддерживаемости, без отдельных правил под стекло и складные экраны |
Коротко о README
Страница репозитория перечисляет два скилла в таблице, показывает установку через skills CLI и вручную и называет каталоги, куда агенты кладут скиллы: `~/.cursor/skills/`, `~/.claude/skills/`, `~/.codex/skills/` и `~/.agents/skills/`. Для Liquid Glass указано требование Xcode с iOS 26 SDK. Структура репозитория описана как папка на скилл с `SKILL.md` и необязательным `reference.md`.
Бейдж для README
Исходный SKILL.md
--- name: swiftui-liquid-glass description: >- Implement, review, and refactor SwiftUI features using the iOS 26+ Liquid Glass API. Use when adopting Liquid Glass in new UI, converting existing surfaces to glass, reviewing glass usage for correctness, or fixing common Liquid Glass pitfalls (custom blur stacks, scroll views, button shapes, bottom bars, pre-enclosed symbols). --- # SwiftUI Liquid Glass Use native Liquid Glass APIs on iOS 26+. Do not recreate the effect with materials, blurs, or shadows. ## Core rules 1. **Don't build custom Liquid Glass** through adding backgrounds, outlines, blurs and shadows. 2. **Buttons — style**: use `.buttonStyle(.glass)` for non-colored buttons, and `.buttonStyle(.glassProminent)` for tinted buttons. `.glassProminent` supports `.tint()`, but this can only be a color (not a gradient). 3. **Buttons — shape**: use `.buttonBorderShape()` instead of applying a shape to the button label by hand. 4. **Buttons — padding**: using this button setup adds roughly 13pt of padding inside the liquid glass shape; keep this in mind when adapting designs. 5. **Custom views**: use `.glassEffect(.regular, in: ...)` to embed custom Views inside liquid glass containers. 6. **Grouped glass**: use `GlassEffectContainer` when multiple liquid glass elements are next to each other. this View / Container adds a liquid merge effect when the elements grow / touch each other. 7. **Scrolling**: avoid using liquid glass inside ScrollView and List (anything that scrolls). 8. **Bottom bars**: when anchoring a liquid glass View to the bottom of the screen, prefer embedding it in `.safeAreaBar(.bottom)` instead of a VStack or `.overlay()`.