Swift Assist, Part Deux

At WWDC 2024, I attended a developer tools briefing with Jason Snell, Dan Moren, and John Gruber. Later, I wrote about Swift Assist, an AI-based code generation tool that Apple was working on for Xcode.

That first iteration of Swift Assist caught my eye as promising, but I remember asking at the time whether it could modify multiple files in a project at once and being told it couldn’t. What I saw was rudimentary by 2025’s standards with things like Cursor, but I was glad to see that Apple was working on a generative tool for Xcode users.

In the months that followed, I all but forgot that briefing and story, until a wave of posts asking, “Whatever happened to Swift Assist?” started appearing on social media and blogs. John Gruber and Nick Heer picked up on the thread and came across my story, citing it as evidence that the MIA feature was real but curiously absent from any of 2024’s Xcode betas.

This year, Jason Snell and I had a mini reunion of sorts during another developer tools briefing. This time, it was just the two of us. Among the Xcode features we saw was a much more robust version of Swift Assist that, unlike in 2024, is already part of the Xcode 26 betas. Having been the only one who wrote about the feature last year, I couldn’t let the chance to document what I saw this year slip by.

Apple worked with OpenAI on its ChatGPT integration, a limited version of which can be used for free or with a ChatGPT API account.

I’m not a developer, so I’m not going to review Swift Assist (a name that is conspicuously absent from Apple’s developer tool press release, by the way), but the changes are so substantial that the feature I was shown this year hardly resembles what I saw in 2024. Unlike last year’s demo, this version can revise multiple project files and includes support for multiple large language models, including OpenAI’s ChatGPT, which has been tuned to work with Swift and Xcode. Getting started with ChatGPT doesn’t require an OpenAI account, but developers can choose to use their account credentials from OpenAI or another provider, like Anthropic. Swift Assist also supports local model integration. If your chosen AI model takes you down a dead end, code changes can be rolled back incrementally at any time.

Swift Assist’s chatbot lives in the left sidebar.

It’s also notable that this is Apple’s first stab – in any app – at a chatbot. The chat interface lives in the left sidebar, where you can request code changes, bug fixes, documentation, and other information relevant to a project. Changes proposed by your selected LLM are color-coded to make them easy to review, too.

It’s great to see Apple go down a path that gives developers the flexibility to choose whichever model they’d like, visualize changes, and roll them back as needed. Whether that’s enough to satisfy developers who have increasingly looked to third-party options to incorporate AI into their workflows remains to be seen. The reactions that I’ve seen to Xcode 26’s new features run the gamut. Some developers are cautiously optimistic and even enthusiastic about Xcode 26, while others have run into roadblocks or decided the update is too little, too late.

Still, what I saw this year struck me as a more solid foundation to build on. My hope is that, by getting these features in developers’ hands at the beginning of the beta period, Apple will have a chance to incorporate developer feedback before releasing Xcode 26 publicly this fall.