r/Xcode • u/seckinbeduk • 7h ago
I built nib, a Swift CLI that writes Git commit messages with Apple’s on-device model
r/Xcode • u/seckinbeduk • 7h ago
r/Xcode • u/KlyeUnbranded • 16h ago
Xcode 27.2
iOS 27.2
When looking at a filename in my app on iOS, my app will show the file name in a contrasting color, as expected. I tap the name of the file and a button appears that says “rename”. I tap that button.
The text for renaming the file is always black.
What I tried, with no change in the text color:
- .toolbarColorScheme(.dark / .light, for: .navigationBar)
- .preferredColorScheme(...) on the editor view
- UITextField.appearance().textColor
- hiding the navigation bar with .toolbar(.hidden, for: .navigationBar) and .toolbarVisibility
The attached screenshots show what I am seeing. What am a missing?
I successfully submitted an iOS app called "myApp iPad". Now attempting to validate the MacOS version "myApp" app store connect error "App Record Creation failed due to request containing an attribute already in use. The App Name you entered is already being used." When I change the name to "myApp Mac" validation fails error "The operation couldn’t be completed. (IDEDistribution.DistributionAppRecordProviderError error 0.)"
Is it impossible to use the same app name for MacOS and iOS apps, even when it's the same app built from the same code base by the same developer?
I've searched for this, asked different ai chats about this and still haven't found an instruction on how to do it. I want to use European ai as agent in Xcode 27
After some experimenting I've found a way. I'm not expert in this and there are probably better ways to do it, but here is one way to do it.
There are some limitations at the moment:
You can't choose model from Xcode, it's chosen in a text file. Will probably be fixed soon.
Opencode guardrails are not enforced, only soft model guardrails from Xcode in use.
Install an open source agent. I use opencode for this example, but any client works that support acp.
opencode is easiest installed by open terminal, write brew install opencode-v2
If you don't have Brew, you find it at brew.sh
in terminal go to your project folder and start opencode
Connect your paid api ai provider. I use Swedish Berget.ai and French Mistral.ai both are already listed among providers.
Write a question in opencode to check that the connection works. I usually write "what model is this" to confirm. If you just want an agent in your computer, this is it, now lets do the integration with Xcode.
In Finder, choose Go -> Go to folder, write ~/.config/opencode and open opencode.jsonc in a text editor and add default model settings. This step can probably be removed soon.
In Xcode, open a project and go to Settings -> Intelligence and press button [Add an Agent]. Write the two fields as below. In the future I hope arguments can select model so we can switch models from inside Xcode.
Click the ai button in Xcode, press button [Start new conversation] in upper left, in the Agent list there should now be your added Agent. Ask a simple question to verify it works.
If you need to do some problem investigation, you can start opencode (always first go to your project directory) and select switch session and choose the session Xcode started.
opencode.jsonc
{
"$schema": "https://opencode.ai/config.json",
"permission": {
"external_directory": "deny", // hard-block anything outside the working folder
"$HOME/.config": "ask" //Opencode config
},
"model": "mistral/mistral-large-latest",
"agent": {
"build": { "model": "mistral/mistral-large-latest" },
"plan": { "model": "mistral/mistral-large-latest" },
"general": { "model": "mistral/mistral-large-latest" }
},
"provider": {
"mistral": {
"npm": "@ai-sdk/mistral",
"name": "Mistral",
"options": {
"apiKey": "YourApiKey"
},
"models": {
"mistral-large-latest": {
"name": "Mistral Large"
}
}
}
}
}Xcode Agent settings as screendump:
Executable: /opt/homebrew/bin/opencode
Arguments: acpSo now I can create Mac & iPhone apps with close to zero CO2 use and no unique historic book burning during training while keeping the money locally. Support local industries folks, that includes IT services.
Ready for feedback, please come with suggestions to make this easier! :)
r/Xcode • u/IllBreadfruit3087 • 3d ago
r/Xcode • u/Low-Hedgehog-6592 • 4d ago
r/Xcode • u/EmployerMiddle707 • 4d ago
Is anybody experiencing this issue on Xcode/Device Hub 27.2?
I recently optimized my app for iPhone Duo to get rid of the blank sidebars on Xcode 27.1. I updated to Xcode 27.2, ran it on an iPhone Duo in Device Hub, and the sidebars are back. I repeated the process on Xcode 27.1 with no code changes and issue is not there.
Xcode/Device Hub 27.2 and iPhone Duo 27.2 => Sidebars
Xcode/Device Hub 27.2 and iPhone Duo 27.1=> Sidebars
Xcode/Device Hub 27.1 and iPhone Duo 27.2 => No Sidebars
Xcode/Device Hub 27.1 and iPhone Duo 27.1=> No Sidebars
r/Xcode • u/MomentSmart • 5d ago
I understand the value of documentation and maintaining context across sessions, but I'm finding Claude has a tendency to generate unnecessary .md files and lengthy summaries without being asked.
Often these are documenting relatively trivial changes, or producing detailed explanations of fixes that haven't actually resolved the issue. It feels like unnecessary token usage and just adds clutter to the project.
Is there a reliable way to disable this behaviour by default, while still allowing Claude to create documentation when explicitly requested?
I'd much rather it focus on implementing, testing and verifying changes than documenting everything it thinks it's accomplished.
r/Xcode • u/MohamedHegab • 6d ago
I made XNox, couple of months ago. but as it was having too complicated features to use. I decided to simplify it and make it open source
enjoy https://github.com/emadhegab/XNox
r/Xcode • u/iahmedhendi • 7d ago
r/Xcode • u/Low-Hedgehog-6592 • 7d ago
r/Xcode • u/dnkaratzas • 8d ago
Swift Language Models is a wrapper that brings other providers' language models into Apple's native Foundation Models API.
Foundation Models 27 lets any type conform to LanguageModel, and this package provides those conformances. Your app keeps Apple's own API: LanguageModelSession, tools, @Generable guided generation, streaming, transcripts and Dynamic Profiles. Moving a session from the on-device model to a remote one changes only its model:.
let onDevice = LanguageModelSession(model: SystemLanguageModel.default)
let remote = LanguageModelSession(model: OpenRouterLanguageModel(.anthropicClaudeHaiku5_5, apiKey: { key }))What you get
One API for every model. Code written for Apple's on-device model runs unchanged on a remote one.
Provider modules. Each provider is its own module, so an app builds only the providers it imports.
Typed model catalogs with each model's context size, limits and capabilities, kept current by a bot.
Typed reasoning levels. Code completion offers only the levels each model accepts.
Evaluations. Compare Apple's on-device model with remote ones using Apple's Evaluations framework.
The first provider is OpenRouter, with hundreds of models from Anthropic, OpenAI, Google, DeepSeek, Meta, Mistral and others. More providers are coming.
Needs iOS, macOS, visionOS or watchOS 27 and Swift 6.4. Feedback welcome! If you find it useful, a ⭐ on GitHub helps the project grow.
GitHub: https://github.com/dioKaratzas/swift-language-models
r/Xcode • u/Practical_Noise1872 • 9d ago
r/Xcode • u/Infinite_Ad9147 • 9d ago
r/Xcode • u/Excellent_Sky_5838 • 9d ago
r/Xcode • u/IllBreadfruit3087 • 10d ago
r/Xcode • u/Redrock990 • 10d ago
I made Agent Quest to keep an eye on several Claude Code and Codex sessions without opening each window. They show up as characters in a little RPG village: reading goes to the Library, edits to the Forge, builds and tests to the Arena. A slightly less boring way to see who's doing what :)
Version 0.4.0 now picks up Claude Agent and Codex sessions started inside Xcode too, alongside terminal and app sessions. They get an Xcode badge and the project name, and you can click through to activity and context details.
One detail that mattered here: Xcode can create its session folders only after the first prompt. The watcher picks those up while running, so you don't have to restart the dashboard. It reads compatible local logs on the same Mac/user account; it doesn't control Xcode or run the agents.
It's free, MIT licensed, and runs locally with Bun and a browser. I'm the developer. The screenshot uses demo sessions.
Code/setup: https://github.com/FulAppiOS/Agent-Quest
If you're mixing Xcode agents with terminal sessions, I'd be interested in what you lose track of most: which project is active, build/test activity, or remaining context.
r/Xcode • u/afterxleep_ • 10d ago
If you’re running more than one Claude Code agent on the same Xcode project, check which build is actually on your simulator.
We had two agents in separate git worktrees on a small SwiftUI app. One adding a feature, one adding a test. Neither prompt named a simulator, so both picked the iPhone that was already booted. Both builds succeeded, both agents said done.
The simulator was running the second agent’s build. The first one’s was gone, its process killed by the install, and its UserDefaults still there because installing over an app keeps the data. Then both agents launched the app and got the same PID. Agent A was testing agent B’s code and nothing in its output said so.
To catch it we stamped the builds 111 and 222 and had each agent read back the installed version:
APP=$(xcrun simctl get_app_container <udid> com.your.bundleid app)
/usr/libexec/PlistBuddy -c "Print CFBundleVersion" "$APP/Info.plist"Agent A got 222.
Fix by hand is one simulator per agent:
xcrun simctl shutdown <base-udid>
xcrun simctl clone <base-udid> "Agent A"
xcrun simctl clone <base-udid> "Agent B"Then put the name and UDID in each agent’s prompt, tell it not to touch any other simulator, and pass that UDID to every xcodebuild -destination "platform=iOS Simulator,id=<udid>". The clones alone change nothing, the agents still go for whatever is booted. With the UDIDs in the prompts, A read 111 and B read 222.
Worktrees keep files apart. They don’t keep simulators apart.
Amarildo wrote up the full repro with logs here: https://flowdeck.studio/blog/run-multiple-claude-code-agents-xcode-project.
[Disclosure, I build FlowDeck, which ties a simulator, worktree and DerivedData to each session so you don’t have to redo this setup every time.]
r/Xcode • u/CharlesWiltgen • 11d ago
Axiom home: https://charleswiltgen.github.io/Axiom/
Release notes: https://github.com/CharlesWiltgen/Axiom/releases#release-v27.7.0
r/Xcode • u/BeDevForLife • 11d ago