⏳ This skill is pending AI review.

Scores will appear once the review pipeline completes.

version unknown

update-swiftui-apis

@avdlee⭐ 3.6k stars

Scan Apple's SwiftUI documentation for deprecated APIs and update the SwiftUI Expert Skill with modern replacements. Use when asked to "update latest APIs", "refresh deprecated SwiftUI APIs", "check for new SwiftUI deprecations", "scan for API changes", or after a new iOS/Xcode release. Requires the Sosumi MCP to be available.

—/10

// RATINGS

⭐GitHub Stars
⭐⭐⭐⭐⭐ 3.6kGitHub ↗

Very popular

🟢ProSkills Score
—
📍

Not yet listed on ClawHub or SkillsMP

// README

SwiftUI Expert Skill

License: MIT Weekly Installs GitHub Release GitHub Stars

Expert guidance for any AI coding tool that supports the Agent Skills open format — SwiftUI state management, view composition, performance, SDK 27 changes, and Liquid Glass adoption.

This repository distills practical SwiftUI best practices into actionable, concise references for agents and code review workflows.

This repository is packaged as a portable Agent Plugin (spec 1.0.0): compatible clients discover the skill automatically from the root plugin.json manifest and the skills/ directory. Client-specific manifests for Claude Code, Cursor, Codex, and pi are included as well.

Who this is for

  • Teams adopting modern SwiftUI APIs who want quick, correct defaults
  • Developers reviewing or refactoring SwiftUI views and data flow
  • Anyone shipping performant lists, scrolling, sheets, and navigation in SwiftUI

See also my other skills:

How to Use This Skill

Option A: Using skills.sh (recommended)

Install this skill with a single command:

npx skills@latest add https://github.com/avdlee/swiftui-agent-skill --skill swiftui-expert-skill

For more information, visit the skills.sh platform page.

Installed before the Agent Plugins migration? Run npx skills@latest update using skills CLI 1.5.24 or newer. It migrates the saved skill path without treating the skill as deleted.

Then use the skill in your AI agent, for example:

Use the swiftui expert skill and review the current SwiftUI code for state-management and performance improvements

Option B: ChatGPT & Codex (OpenAI Plugins Directory)

This plugin is distributed through the universal OpenAI Plugins Directory shared by ChatGPT and Codex:

  1. In the ChatGPT desktop app, select Codex (or ChatGPT with Work enabled), or use the plugin browser in Codex CLI.
  2. Open Plugins and search for "SwiftUI Expert".
  3. Install the plugin. The skill becomes available in new chats and sessions.

Option C: Claude Code Plugin

Personal Usage

To install this Skill for your personal use in Claude Code:

  1. Add the marketplace:
/plugin marketplace add AvdLee/SwiftUI-Agent-Skill
  1. Install the Skill:
/plugin install swiftui-expert@swiftui-expert-skill

Project Configuration

To automatically provide this Skill to everyone working in a repository, configure the repository's .claude/settings.json:

{
  "enabledPlugins": {
    "swiftui-expert@swiftui-expert-skill": true
  },
  "extraKnownMarketplaces": {
    "swiftui-expert-skill": {
      "source": {
        "source": "github",
        "repo": "AvdLee/SwiftUI-Agent-Skill"
      }
    }
  }
}

When team members open the project, Claude Code will prompt them to install the Skill.

Option D: Cursor Plugin

Load the plugin from a local clone by placing it in ~/.cursor/plugins/local, or install it from the Cursor Marketplace once listed. Cursor supports both the portable Agent Plugins manifest (plugin.json) and the Cursor Plugin manifest (.cursor-plugin/plugin.json) included in this repository.

Using another tool?

See INSTALLATION.md for all other installation options: pi, Gemini CLI, Autohand Code, and manual installation.

How to verify:

Your agent should reference the workflow/checklists in skills/swiftui-expert-skill/SKILL.md and jump into the relevant reference file for your task.

What's Inside

This skill covers the full surface of SwiftUI development -- from state management and view composition to Swift Charts, macOS multi-window scenes, animations, SDK 27 changes, and Liquid Glass -- without bloating your agent's task context. Reference files load on demand, so your agent gets deep guidance only for the topic at hand.

  • State management -- property wrapper selection, @Observable, data flow patterns
  • Environment -- @Entry, stable defaults, and invalidation-aware propagation
  • View composition -- extraction patterns, container views, identity stability
  • Modifiers -- conditional identity, no-effect values, and AnyShapeStyle
  • Performance -- hot-path optimization, lazy loading, @Observable granularity
  • Lists & ForEach -- stable identity, Table, inline filtering pitfalls
  • Navigation & sheets -- NavigationStack, NavigationSplitView, Inspector, enum-based sheets
  • Swift Charts -- marks, axes, selection, styling, accessibility, Chart3D
  • Animations -- implicit/explicit, transitions, phase/keyframe, @Animatable macro
  • macOS -- scenes, window styling, Table, HSplitView, AppKit interop
  • Liquid Glass -- iOS 26+ glass effects, containers, fallback patterns
  • SDK 27 -- @State and @ContentBuilder migrations, reordering, AsyncImage caching, swipe actions, dialogs, and toolbars
  • Accessibility -- VoiceOver, Dynamic Type, grouping, traits
  • Image optimization -- AsyncImage, downsampling, caching
  • Latest APIs -- deprecated-to-modern migration guide (iOS 15+ through iOS 27+)
  • Instruments trace recording & analysis -- bundled xctrace toolchain for diagnosing hangs, hitches, and expensive SwiftUI view updates (see below)

Non-opinionated: focuses on correctness and performance, not architecture or code style.

Recording & Analysing Instruments Traces

Unlike the other reference files — which are text guidance — this part of the skill ships an executable Python toolchain that wraps xctrace. It lets the agent record a new .trace and analyse an existing one end-to-end: the parser reads the Time Profiler, Hangs, Animation Hitches, SwiftUI updates, and SwiftUI cause-graph lanes, correlates hangs/hitches with main-thread samples, and emits JSON + markdown so the agent can reason over structured data instead of the raw xctrace export firehose.

When it triggers:

  • A .trace path appears in the prompt (analysis).
  • The user asks to record, profile, or capture a session (recording).

What the agent can then ask:

Analyse ~/Desktop/MyApp.trace and tell me what's wrong.

Focus analysis on what happens right after the 'feed loaded' log.

Which of my SwiftUI views is responsible for the hang around 6s?

Record a new trace: attach to MyApp on my iPhone — I'll tell you when I'm done.

Under the hood:

  • scripts/record_trace.py — wraps xctrace record. Supports attach / launch / all-processes, stop-file for agent-driven sessions, time-limits, JSON device & template discovery.
  • scripts/analyze_trace.py — runs the five-lane analysis. Discovery modes --list-logs, --list-signposts, --fanin-for let the agent scope to a time window or trace a specific view back to its invalidation sources. --window START_MS:END_MS restricts every lane to a slice.
  • scripts/instruments_parser/ — one module per lane (time_profiler, hangs, hitches, swiftui, `cau

// HOW IT'S BUILT

KEY FILES

.agents/skills/update-swiftui-apis/SKILL.mdREADME.md

// REPO STATS

3.6k stars

// ACTIONS

Rate this skill

login to rate

// SCORE

Pending review

// DETAILS

Categoryother
Author@avdlee
Versionversion unknown
PriceFree