Main Content

Experimenting with GitHub Copilot Agent Mode to build a macOS App.

GitHub Copilot’s Agent Mode is pretty amazing. I’ve used it before to build web apps with Next.js and Python, but this time I wanted to try something different—so I asked it to create a native macOS application.

The result is JobTwister, an experimental macOS app that helps track job applications. It’s built using SwiftUI and SwiftData, runs natively on macOS, and was largely written with the help of GitHub Copilot.

Screenshot of the JobTwister app with a dashboard of job status' and a listing of jobs applied to

I started by asking Copilot to build the app from scratch and told it what fields I wanted to track. It handled that surprisingly well. From there, I kept adding features—sometimes it nailed them, and sometimes it completely missed the mark (as expected with any AI).

One highlight was asking it to export all the data to a CSV file. It completed that with no problem. Importing data from a CSV? Also smooth. That was important to me, as I wanted users to back up their data or bring in data from other tools.

The trickiest feature was supporting multiple interview stages (1st, 2nd, 3rd, etc.). We went in circles on that one, and it still hasn’t been implemented. I suspect I need to refine how I communicate in Swift-specific terms to get better results.

One thing I learned: the GitHub Copilot Xcode extension isn’t great. It often said it updated code when it didn’t. I ended up using Copilot in VS Code and switching over to Xcode to test and run the app.

Along the way, I started learning Swift myself. Sometimes, it was just easier to make small changes manually than to wrangle with Copilot-generated code that felt overly complex.

Right now, the app is in a decent place, but it’s not actively being developed. I don’t have a Copilot license at the moment, and job hunting takes priority. I’m slowly picking up more Swift, but not enough to move development forward significantly just yet.

If you want to try it out, you’ll need to clone the repo and build it in Xcode yourself—I don’t have an Apple Developer account, so I can’t distribute it.

And if you’re interested in contributing, feel free to jump in!


Leave a Reply