swiftui-liquid-glass — скилл для Codex: что делает и установка
Скилл помогает создавать и проверять интерфейсы SwiftUI с Liquid Glass для iOS 26+. Он нужен при внедрении эффекта, ревью и проверке fallback-сценариев.
npx skills add openai/plugins --skill swiftui-liquid-glass -a codexЧто делает swiftui-liquid-glass
Скилл ориентирован на создание и ревью SwiftUI-интерфейсов с API Liquid Glass для iOS 26+. Он подсказывает, где применять стеклянные поверхности, кнопки, чипы и карточки, а где эффект лучше не использовать. В основе — native API glassEffect, GlassEffectContainer и стили кнопок .glass и .glassProminent.
Рабочий процесс зависит от задачи: проверка существующего кода, улучшение готового экрана или реализация новой функции. Скилл обращает внимание на порядок модификаторов, единые формы, интерактивность, группировку элементов и переходы через glassEffectID и @Namespace. Для iOS 26+ нужна проверка #available(iOS 26, *), а для ранних версий — fallback с материалом вроде .ultraThinMaterial.
Ставьте его, если проект использует SwiftUI и нужно сверить реализацию с правилами Liquid Glass. Для интерфейсов без iOS 26+ или без SwiftUI он не по адресу.
Какие задачи решает
- проверить SwiftUI-экран с Liquid Glass
- подобрать стеклянные поверхности для новой функции
- сгруппировать несколько glass-элементов через
GlassEffectContainer - добавить fallback для версий iOS до 26
- проверить порядок модификаторов и morphing-переходы
Примеры запросов агенту
- Проверь этот экран SwiftUI на соответствие Liquid Glass для iOS 26+.
- Перепиши карточки и кнопки на native Liquid Glass API, добавь fallback для ранних версий iOS.
- Проверь, нужен ли здесь `GlassEffectContainer`, и исправь порядок модификаторов.
Как установить swiftui-liquid-glass
1Через Skills CLI (Vercel)
npx skills add openai/plugins --skill swiftui-liquid-glass -a codex2Вручную: положить файлы
.agents/skills/swiftui-liquid-glass/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add openai/plugins --skill swiftui-liquid-glass -a claude-code2Вручную: положить файлы
~/.claude/skills/swiftui-liquid-glass/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/swiftui-liquid-glass/
Вручную: положить файлы
.cursor/skills/swiftui-liquid-glass/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install openai/plugins swiftui-liquid-glass2Вручную: положить файлы
.github/skills/swiftui-liquid-glass/SKILL.mdКомандой платформы
gemini skills install https://github.com/openai/plugins --path plugins/build-ios-apps/skills/swiftui-liquid-glassВручную: положить файлы
.devin/skills/swiftui-liquid-glass/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Claude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
Из того же набора201
Весь набор →Похожие
Вопросы о swiftui-liquid-glass
Как установить swiftui-liquid-glass в Codex?
Выполните npx skills add openai/plugins --skill swiftui-liquid-glass. Файл скилла появится по пути .agents/skills/swiftui-liquid-glass/SKILL.md.
Что делает swiftui-liquid-glass?
Скилл помогает реализовать и проверить SwiftUI-интерфейсы с Liquid Glass для iOS 26+. Он проверяет API, порядок модификаторов, интерактивность, группировку и fallback.
Нужен ли iOS 26+ для swiftui-liquid-glass?
Скилл рассчитан на Liquid Glass API в iOS 26+. Для ранних версий он рекомендует добавить fallback с материалом .ultraThinMaterial.
Исходный текст
SKILL.md · MIT
---
name: swiftui-liquid-glass
description: Implement and review iOS 26+ SwiftUI Liquid Glass UI. Use when adopting Liquid Glass or checking its correctness, performance, and design fit.
---
# SwiftUI Liquid Glass
## Overview
Use this skill to build or review SwiftUI features that fully align with the iOS 26+ Liquid Glass API. Prioritize native APIs (`glassEffect`, `GlassEffectContainer`, glass button styles) and Apple design guidance. Keep usage consistent, interactive where needed, and performance aware.
## Workflow Decision Tree
Choose the path that matches the request:
### 1) Review an existing feature
- Inspect where Liquid Glass should be used and where it should not.
- Verify correct modifier order, shape usage, and container placement.
- Check for iOS 26+ availability handling and sensible fallbacks.
### 2) Improve a feature using Liquid Glass
- Identify target components for glass treatment (surfaces, chips, buttons, cards).
- Refactor to use `GlassEffectContainer` where multiple glass elements appear.
- Introduce interactive glass only for tappable or focusable elements.
### 3) Implement a new feature using Liquid Glass
- Design the glass surfaces and interactions first (shape, prominence, grouping).
- Add glass modifiers after layout/appearance modifiers.
- Add morphing transitions only when the view hierarchy changes with animation.
## Core Guidelines
- Prefer native Liquid Glass APIs over custom blurs.
- Use `GlassEffectContainer` when multiple glass elements coexist.
- Apply `.glassEffect(...)` after layout and visual modifiers.
- Use `.interactive()` for elements that respond to touch/pointer.
- Keep shapes consistent across related elements for a cohesive look.
- Gate with `#available(iOS 26, *)` and provide a non-glass fallback.
## Review Checklist
- **Availability**: `#available(iOS 26, *)` present with fallback UI.
- **Composition**: Multiple glass views wrapped in `GlassEffectContainer`.
- **Modifier order**: `glassEffect` applied after layout/appearance modifiers.
- **Interactivity**: `interactive()` only where user interaction exists.
- **Transitions**: `glassEffectID` used with `@Namespace` for morphing.
- **Consistency**: Shapes, tinting, and spacing align across the feature.
## Implementation Checklist
- Define target elements and desired glass prominence.
- Wrap grouped glass elements in `GlassEffectContainer` and tune spacing.
- Use `.glassEffect(.regular.tint(...).interactive(), in: .rect(cornerRadius: ...))` as needed.
- Use `.buttonStyle(.glass)` / `.buttonStyle(.glassProminent)` for actions.
- Add morphing transitions with `glassEffectID` when hierarchy changes.
- Provide fallback materials and visuals for earlier iOS versions.
## Quick Snippets
Use these patterns directly and tailor shapes/tints/spacing.
```swift
if #available(iOS 26, *) {
Text("Hello")
.padding()
.glassEffect(.regular.interactive(), in: .rect(cornerRadius: 16))
} else {
Text("Hello")
.padding()
.background(.ultraThinMaterial, in: RoundedRectangle(cornerRadius: 16))
}
```
```swift
GlassEffectContainer(spacing: 24) {
HStack(spacing: 24) {
Image(systemName: "scribble.variable")
.frame(width: 72, height: 72)
.font(.system(size: 32))
.glassEffect()
Image(systemName: "eraser.fill")
.frame(width: 72, height: 72)
.font(.system(size: 32))
.glassEffect()
}
}
```
```swift
Button("Confirm") { }
.buttonStyle(.glassProminent)
```
## Resources
- Reference guide: `references/liquid-glass.md`
- Prefer Apple docs for up-to-date API details, and use web search to consult current Apple Developer documentation in addition to the references above.
© OpenAI · MIT · openai/plugins