Last week, I was invited to Beijing to attend the inaugural Apple App Incubator event, where Tim Cook attended in person to present awards to the winners.
Unlike existing initiatives that primarily focus on campus-oriented creative competitions and introductory coding education, the Apple App Incubator is a dedicated initiative launched in China for developers, designers, and entrepreneurs. It is designed to provide deep technical, design, and commercialization support for teams that already have a solid product foundation. Consequently, the finalist apps demonstrated an impressive level of polish and commercial maturity—some had already raised millions or even tens of millions of dollars in funding, alongside equally impressive creations crafted by solo developers or small teams of just a few people.
A year ago, seeing these beautifully crafted apps and services, I would have cheered without hesitation and wished them tremendous commercial success. But today, I found myself caught in an indescribably mixed emotion.
The vast majority of the participating projects incorporated AI capabilities. Aside from a few running on-device, most adopted a business model centered on “cloud-based LLMs + subscriptions.” Setting aside the few products with truly defensible commercial moats, the underlying architecture of many apps can be distilled down to: a polished UI + extractable rules + third-party cloud models. I think of these as AI-relay apps.
With the rise of generative UI and plugins/skills bundled with pre-configured capabilities, general-purpose AI tools can now offer comparable utility at near-zero marginal cost. Weighing overall subscription expenses, an increasing number of users may well prefer a single, all-in-one foundation model subscription over paying individually for multiple niche apps—even if the latter offer a more meticulously tailored user experience. This means the true competitor to these “AI-relay” apps is quietly shifting from traditional copycats to the foundational model providers themselves.
This realization has become even more apparent recently. With my personal AI tool, as our interactions multiplied, Claude Code has fully internalized its invocation and collaboration logic. Now in day-to-day use, without any explicit prompts, it automatically spins up fresh contexts and drives the entire workflow forward, naturally adhering to my working habits. I had originally planned to write a dedicated runner script to act as an orchestrator for this deterministic workflow, but that has now become entirely unnecessary. While this differs from everyday consumer apps, it proves a crucial point: when an agent can remember, learn, and adapt to individual habits, it is entirely capable of dynamically ‘generating’ a bespoke experience just for you.
Furthermore, if the core value of a commercial app mostly boils down to rules and prompts that can be easily abstracted and extracted, then even if model providers have no intention of cloning it, the app’s clever core logic can still be rapidly reverse-engineered, replicated, and widely shared by users driven by a culture of open sharing. And when replication no longer relies on directly copying code or stealing design assets, creators face far more complex challenges in trying to protect their work through legal means.
For indie and small-team developers, even as we celebrate the tremendous superpowers AI grants us, we must take a sober look at a harder question: how much of our product’s moat actually stems from beyond the AI model? Faced with the looming threat of being superseded by general-purpose models, what truly irreplaceable value can we still deliver to our users?
“AI empowering you” and “AI empowering your product” have always been two entirely different things.
This Week’s Sponsor
Swift Pro —— Love Swift, but not Xcode?
Swift Pro brings Swift development into IntelliJ IDEA. Native editing, compiler assistance, SwiftPM and Xcode workflows, debugging, tests and SwiftUI previews, with all the JetBrains navigation and refactoring you already know. One plugin, just $4.
Recent Recommendations
iOS 27: App Intents Testing
For App Intents, unit tests that directly call perform() can only verify the Swift implementation itself. They cannot guarantee that Siri, Shortcuts, or Spotlight can correctly discover, construct, and execute those intents. The AppIntentsTesting framework introduced in iOS 27 provides a new approach, extending App Intents testing beyond individual Swift methods to verify the integration contract between an app and the system.
Anton Gubarenko demonstrates how to use IntentDefinitions in a UI Testing Target to dynamically discover Intents and Entities, then perform out-of-process tests through the actual App Intents infrastructure. The process requires neither importing the app’s Intent types nor interacting with the UI. Beyond verifying Intent execution results, it can also test Entity queries, persistent identifier resolution, and parameter passing between different Intents.
Although these tests run in a UI Testing Target, they don’t require simulating user taps or interacting with the Shortcuts interface. This also demonstrates another use for UI Testing: leveraging process isolation to perform system-level integration tests rather than limiting it to traditional UI automation.
Xcode Projects for the Command Line and Coding Agents
Xcode 27.2 not only introduces a new JSON-based project configuration format, project.xcproj, but also provides two accompanying command-line tools: xcodeproj for creating and modifying projects, managing targets, build phases, build settings, and Swift packages; and xcprojformatter for format normalization and basic structural validation.
Artem Novichkov explains how to use these tools, highlights common pitfalls, and compares their capabilities with those of Xcode MCP. He specifically recommends using AGENTS.md or a Skill to instruct agents to prioritize xcrun xcodeproj instead of editing project files directly. After all, while JSON makes configuration files easier to read, that doesn’t necessarily make direct editing safe. Rather than having agents interpret and maintain complex project structures themselves, relying on dedicated tools with explicit operation semantics, constraint checks, and meaningful error feedback is often a more reliable approach.
some View? without parentheses in Swift 6.4
When declaring optional opaque or existential types in Swift, we’ve always needed an extra pair of parentheses, such as (some View)? or (any Delegate)?. This stems from Swift’s parsing rules for some, any, and the optional type suffix ?, which prevent the compiler from interpreting some View? the way developers might intuitively expect.
Swift 6.4 changes this behavior through SE-0521, making some View? and any Delegate? valid syntax. Sarun Wongpatcharapakorn explains the background of this improvement, where it applies, and when parentheses are still required. He also connects the change to Swift’s potential future requirement for explicit any: as the ExistentialAny feature moves forward, SE-0521 removes an unnecessary syntactic burden from that transition.
HomeView and Apple TV 4K 2026
Last week, Apple introduced two new devices for the home: HomeView and the 2026 Apple TV 4K. Compared with the Apple TV 4K, which continues along an established product path, HomeView deserves more attention. It aims to bring smart home controls, household information, and everyday interactions together through a new device interface. Michael Tsai has collected related coverage and community perspectives on both products. The discussions surrounding HomeView’s positioning, use cases, and lack of a dedicated App Store are particularly worth further participation from developers.
HomeView’s arrival might unexpectedly benefit CarPlay. Although HomeView doesn’t offer a dedicated third-party app store, Apple allows existing CarPlay audio and video apps to run on HomeView without modification. In the past, some developers may have had little incentive to support in-car experiences, but adding the home as another use case changes the value of that investment. If developers begin supporting CarPlay to reach HomeView users, CarPlay itself could gain broader app support as a result.
Comparing On-Device and Private Cloud Compute Summaries
Apple Foundation Models offers both on-device and cloud-based processing through Private Cloud Compute. Although the latter can handle longer contexts, does that necessarily mean it produces better text summaries?
Building on his earlier work in Making On-Device Summaries Work for Real Issue Lengths, which explored token budgets and content truncation, Tiago Henriques uses the Evaluations framework provided by Xcode 27 to compare the two approaches. The most valuable takeaway isn’t how either model performs, but the author’s evaluation methodology: rather than assuming that a larger model or more complete context will inevitably produce better results, he uses repeatable tests to inform whether adopting a more complex technical solution is actually justified.
Assistive Access — iOS Easy Mode, Revisited
Assistive Access is an accessibility feature Apple introduced in iOS 17 to help users with cognitive disabilities navigate their devices more easily through larger interface elements, simpler navigation, and a more focused set of features. Starting with iOS 26, third-party apps can also use an AssistiveAccess Scene to provide interfaces and interaction flows specifically designed for this mode.
Bas Broek explains how to use the relevant APIs and test Assistive Access interfaces with SwiftUI Preview. He also emphasizes that Assistive Access isn’t simply about enlarging an existing UI. It requires reconsidering which features are truly necessary, which navigation steps can be eliminated, and how reducing choices and interactions can lower users’ cognitive load.
Tools
iPhone Use: Let AI Assistants Control a Real iPhone over USB
Developed by ZhongErXin, iPhone Use builds on WebDriverAgent (WDA) from the Appium ecosystem, exposing real-device automation capabilities through a local MCP tool and providing accompanying Skills. Agents can connect to and control a real iPhone over USB, using both the UI element hierarchy and screenshots to identify interaction targets. When element-based targeting fails, they can fall back to coordinate-based taps using screenshots. Users can also participate directly through a live preview by tapping, dragging, and scrolling.
iPhone Use isn’t limited to testing apps you’ve developed yourself. It can also interact with other installed apps, such as Notes, WeChat, and Weibo. This makes it more than an automated testing tool, opening up new possibilities for exploring how AI agents can interact with real mobile devices.
yomado: A Virtual Workspace for AI Agents
As AI agents begin interacting with desktop software through screenshots, mouse movements, and keyboard input, giving them a dedicated workspace may help reduce interference with users’ everyday activities. Developed by GuoYu, yomado is a native macOS tool that creates virtual displays and moves the application windows needed for a task into them, providing a relatively independent workspace for visual automation without requiring a physical display dongle. Its accompanying Skill enables agents to create virtual displays, move windows, verify the environment, and restore windows to their original locations when a task is complete.
Sill: Control Mac Windows from Your iPhone or iPad
Developed by Noah, Sill is a free, open-source remote window control tool that streams individual Mac windows or the entire desktop to an iPhone or iPad, allowing interaction through touch, Apple Pencil, a keyboard, or a trackpad. It supports local networks, USB, and direct nearby wireless connections, as well as remote access through a self-managed VPN such as Tailscale. No account registration or third-party cloud relay service is required.
What makes Sill interesting is how carefully it adapts the experience of using an individual Mac window on a mobile device. Features such as window thumbnail switching, a portrait-mode trackpad on iPhone, window resizing, and access to Mac application menus make desktop apps easier to operate on smaller screens.
SwiftDataSync: Building CloudKit Sync and Sharing for SwiftData Apps
SwiftData has long lacked support for sharing data across iCloud accounts, and Mark Battistella has been exploring a solution. SwiftDataSync uses a local SwiftData store as its data foundation and integrates with CloudKit’s private and shared databases through CKSyncEngine, supporting multiple Record Zones simultaneously. A single device can own its own projects while also participating in workspaces shared by others, maintaining separate synchronization and sharing states for each.
Unlike SwiftData’s built-in automatic synchronization, SwiftDataSync isn’t a plug-and-play framework. Developers must implement the mapping between their data models and CloudKit records themselves, and explicitly define deletion handling, conflict resolution, and merge strategies. The framework takes responsibility for synchronization state management, persistent change tracking, retries after failures, and maintaining sharing relationships, offering an alternative for apps that need finer control over synchronization behavior.