Hello again!
Apple are shaking things up with @State macros and a new way to export Xcode’s official agent skills to our favorite IDEs, while the fm CLI finally lets us script on-device models from the terminal. We’ve got a bit of everything this week: from the magic of AI-generated function bodies in AgenticSwift to a much-needed deep dive into SwiftUI’s lazy stack internals and macOS inspector design. Plus, if you’re feeling overwhelmed by WWDC26, there’s a perfect “too long; didn’t watch” cheat sheet to get you up to speed without the fatigue.
Let’s dive in!
Articles
Swift
Initializing @Observable classes with the @State macro in Xcode 27
@State is now a macro in Xcode 27, and it finally brings lazy evaluation to @Observable classes. No more wasted cycles initializing models every time a view struct is recreated—it just works. We can finally stop using those clunky optional workarounds in task modifiers for simple state setup.
Installing simulator runtimes from the command line
Xcode 27’s runtime downloader is acting up again, leaving some of us staring at a “fetching download information” dialog forever. The fix is to jump into the terminal and use xcodebuild -downloadPlatform. Just a heads-up: you might need to specify -architectureVariant arm64 if it can’t find the universal runtime, because that’s where the real magic happens.
AI / ML
Using Xcode 27’s Agent Skills in Claude, Codex, and Cursor
Apple’s finally giving us official agent skills in Xcode 27, and the best part is we can actually export them for use in Cursor or Claude. Just run xcrun agent skills export and you’ve got a set of authoritative instructions for things like SwiftUI modernization and test migration in your favorite IDE. Some of them need Xcode to actually run, but for the source-code stuff, it’s a total game changer for our workflow.
AgenticSwift
Imagine a world where you don’t even have to write the function body—you just describe it in a macro and let Codex handle the rest. That’s exactly what AgenticSwift does with its @ai macro. It’s a bit wild to have code generated at expansion time, but for the boilerplate-heavy parts of our apps, this kind of automation may be exactly where we’re heading.
Foundation Models from Python: the fm CLI
macOS 27 just ripped down the wall between Swift and LLMs with the new fm CLI and a Python SDK. We can finally script the on-device model directly from the terminal or a Jupyter notebook without needing a full Xcode project. Whether it’s sorting files with JSON schemas or running evaluation pipelines with Pandas, the loop from “idea” to “evidence” just got a whole lot shorter.
UI / UX
Inspector Guidelines
If you’re building for macOS 26 and your app is starting to feel cluttered, it might be time to move those auxiliary controls into an Inspector. Whether you go with a floating panel or the modern sidebar approach, the key is density and context. Just remember to keep your widths between 225 and 400 pts, or you’ll end up with a UI that feels “off” to Mac users.
WWDC26
Jacob’s WWDC26 tl;dw
Who has time to watch every single WWDC session? These “too long; didn’t watch” notes are a lifesaver, distilling the chaos of WWDC26 into a clean, filterable list. From the state of the union to the nitty-gritty of agentic app experiences, it’s the perfect cheat sheet for catching up on everything Apple just dropped without spending 100 hours in the video player.
Video
Dive into lazy stacks and scrolling with SwiftUI
Ever wonder why your LazyVStack occasionally hitches or why your scroll position jumps? This deep dive pulls back the curtain on how SwiftUI estimates sizes and prefetches content. The big takeaway: stop doing heavy setup in onAppear and filter your data at the query level, not in the view body. If you want buttery-smooth scrolling in your apps, you’ve got to play by the lazy stack’s rules.