一键导入
settings-screen
Generates a complete settings screen for iOS/macOS apps with common sections. Use when user wants to add settings, preferences, or configuration UI.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Generates a complete settings screen for iOS/macOS apps with common sections. Use when user wants to add settings, preferences, or configuration UI.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Implement Liquid Glass design using .glassEffect() API for iOS/macOS 26+. Covers SwiftUI, AppKit, UIKit, and WidgetKit. Use when creating modern glass-based UI effects.
Design system skills for modern Apple platform UI including Liquid Glass, animations, and visual design patterns. Use when implementing new design language features.
Generate accessibility infrastructure for VoiceOver, Dynamic Type, and accessibility features. Use when improving app accessibility, adding accessibility labels and hints, or auditing compliance.
Generates protocol-based analytics infrastructure with swappable providers (TelemetryDeck, Firebase, Mixpanel). Use when user wants to add analytics, track events, or set up telemetry.
Generates app icons programmatically using CoreGraphics following Apple HIG. Use when user wants to create, generate, or design an app icon for macOS or iOS.
Generates authentication infrastructure with Sign in with Apple, biometrics, and Keychain storage. Use when user wants to add authentication, login, or Sign in with Apple.
| name | settings-screen |
| description | Generates a complete settings screen for iOS/macOS apps with common sections. Use when user wants to add settings, preferences, or configuration UI. |
| allowed-tools | ["Read","Write","Edit","Glob","Grep","Bash","AskUserQuestion"] |
Generates a production-ready settings screen with modular sections for iOS and macOS apps.
Before generating, ALWAYS check:
# Find existing settings implementations
rg -l "SettingsView|PreferencesView|SettingsScreen" --type swift
# Check deployment target
cat Package.swift | grep -i "platform"
# Or check project.pbxproj for deployment target
# Detect architecture pattern
rg -l "Observable|ObservableObject|@EnvironmentObject" --type swift | head -5
# Check platform (iOS vs macOS)
rg "UIKit|UIApplication" --type swift | head -1 # iOS
rg "AppKit|NSApplication" --type swift | head -1 # macOS
If existing settings implementation found:
Ask user via AskUserQuestion:
Which sections do you need?
Platform?
Additional features?
Generate these files (customize based on answers):
Sources/Settings/
├── SettingsView.swift # Main container
├── AppSettings.swift # @AppStorage wrapper
├── Components/
│ └── SettingsRow.swift # Reusable row component
└── Sections/
├── AppearanceSettingsView.swift
├── AccountSettingsView.swift
├── NotificationsSettingsView.swift
├── AboutSettingsView.swift
└── LegalSettingsView.swift
Read templates from this skill:
templates/SettingsView.swifttemplates/AppSettings.swifttemplates/SettingsRow.swifttemplates/AppearanceSettingsView.swifttemplates/AccountSettingsView.swifttemplates/NotificationsSettingsView.swifttemplates/AboutSettingsView.swifttemplates/LegalSettingsView.swiftAdapt templates to match:
iOS Integration:
// In any view
NavigationLink("Settings") {
SettingsView()
}
// Or as sheet
.sheet(isPresented: $showSettings) {
NavigationStack {
SettingsView()
}
}
macOS Integration:
// In App.swift
@main
struct MyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
Settings {
SettingsView()
}
}
}
NavigationStack with ListForm for grouped appearanceUIApplication.openSettingsURLStringSettings scene for standard preferences windowTabView for multiple sectionsForm with appropriate styling@Observable
final class AppSettings {
static let shared = AppSettings()
@AppStorage("appearance") var appearance: Appearance = .system
@AppStorage("notificationsEnabled") var notificationsEnabled = true
enum Appearance: String, CaseIterable {
case system, light, dark
}
}
struct SettingsRow<Content: View>: View {
let icon: String
let iconColor: Color
let title: String
let content: () -> Content
var body: some View {
HStack {
Image(systemName: icon)
.foregroundStyle(iconColor)
.frame(width: 28)
Text(title)
Spacer()
content()
}
}
}
After generation, verify:
// In SettingsView
Section("Custom") {
NavigationLink("My Feature") {
MyFeatureSettingsView()
}
}
#if DEBUG
Section("Debug") {
DebugSettingsView()
}
#endif
if !subscriptionStatus.hasAccess {
Section {
Button("Upgrade to Pro") {
showPaywall = true
}
}
}
paywall-generator - For subscription upgrade prompts in settingsauth-flow - For account management integrationreview-prompt - Trigger review from settings (sparingly)