{"$schema": "https://raw.githubusercontent.com/guitaripod/wwdc-sessions/master/schema/transcript.schema.json", "id": "wwdc2026-102", "language": "eng", "source": "https://developer.apple.com/videos/play/wwdc2026/102", "wordCount": 9220, "segments": [{"start": 19.0, "text": "Welcome to the 2026 Platforms State of the Union."}, {"start": 23.0, "text": "This is one of our favorite moments of the year where we get to share what’s new"}, {"start": 27.0, "text": "with the technologies, the frameworks, and the tools that you use every day"}, {"start": 32.0, "text": "to build incredible apps and games."}, {"start": 35.0, "text": "Apps that inspire us, that raise the bar of what’s possible"}, {"start": 39.0, "text": "and that push us to build even better technologies."}, {"start": 43.0, "text": "We love connecting with so many of you."}, {"start": 47.0, "text": "Hearing about your passions, your challenges,"}, {"start": 49.0, "text": "and how we can better support your work."}, {"start": 52.0, "text": "Your feedback shapes some of the most important technologies that we build."}, {"start": 57.0, "text": "And this past year, nowhere was that more true than with the new design"}, {"start": 62.0, "text": "with Liquid Glass and with Apple Intelligence."}, {"start": 65.0, "text": "These were both huge themes in the 26 releases, and they're key again this year,"}, {"start": 71.0, "text": "with many of our efforts influenced by your feedback."}, {"start": 74.0, "text": "Design and intelligence are both so important because they enhance"}, {"start": 79.0, "text": "what’s special about your apps."}, {"start": 82.0, "text": "The care and the craft that you put into them."}, {"start": 85.0, "text": "With unique interfaces and rich experiences"}, {"start": 89.0, "text": "shaped by your deep domain expertise."}, {"start": 93.0, "text": "Combined with enhanced intelligence capabilities, you can now build features"}, {"start": 97.0, "text": "that weren't previously possible."}, {"start": 99.0, "text": "To highlight what's new, we'll dive into three key areas."}, {"start": 103.0, "text": "First, Apple Intelligence, with new ways to bring generative intelligence"}, {"start": 108.0, "text": "directly into your apps, and new integrations"}, {"start": 111.0, "text": "with system intelligence to bring users back to your apps."}, {"start": 115.0, "text": "Second, platform improvements, with design refinements and more flexible UI layout,"}, {"start": 120.0, "text": "updates to Swift and SwiftUI, and enhancements that make your apps faster,"}, {"start": 126.0, "text": "more adaptive, and easier to build."}, {"start": 129.0, "text": "And finally, developer productivity, taking agentic coding even further,"}, {"start": 134.0, "text": "alongside improvements that make Xcode faster and more personal."}, {"start": 138.0, "text": "We have a lot to cover, so let's get started with Apple Intelligence."}, {"start": 143.0, "text": "At the heart of Apple Intelligence are Apple Foundation models."}, {"start": 147.0, "text": "Working together with Google and leveraging the technologies"}, {"start": 150.0, "text": "behind their Gemini family of models,"}, {"start": 153.0, "text": "we created the latest Apple Foundation models"}, {"start": 156.0, "text": "to power our Apple Intelligence experiences and to provide even better support"}, {"start": 161.0, "text": "for the ways you’re using intelligence in your apps."}, {"start": 164.0, "text": "We adapted these models to run on device and on Private Cloud Compute."}, {"start": 169.0, "text": "Apple Foundation Models power Apple Intelligence, and your apps can use them"}, {"start": 173.0, "text": "too, through the Foundation Models framework."}, {"start": 176.0, "text": "This year, the framework's capabilities are expanding to include image input and"}, {"start": 180.0, "text": "support for server models."}, {"start": 182.0, "text": "So if you have a more complex task"}, {"start": 185.0, "text": "requiring the most advanced frontier models"}, {"start": 188.0, "text": "the API can now integrate with the cloud model provider of your choice."}, {"start": 192.0, "text": "To ensure getting started with a large cloud model is as accessible as possible,"}, {"start": 198.0, "text": "even if you’re writing your first app,"}, {"start": 200.0, "text": "developers with fewer than 2 million first-time App Store downloads"}, {"start": 204.0, "text": "will be able to use Apple Foundation Models"}, {"start": 206.0, "text": "running in Private Cloud Compute with no cloud API cost."}, {"start": 210.0, "text": "It's access to frontier level intelligence with unparalleled privacy protections."}, {"start": 217.0, "text": "Because getting started exploring ideas"}, {"start": 219.0, "text": "shouldn’t be held back by infrastructure costs."}, {"start": 223.0, "text": "With these enhancements, the Foundation Models framework now offers a single API"}, {"start": 228.0, "text": "that supports any model you need."}, {"start": 230.0, "text": "In addition to features you build within your apps, Apple Intelligence can also"}, {"start": 234.0, "text": "surface your app in more places across the system,"}, {"start": 238.0, "text": "giving users more ways to discover and return to it."}, {"start": 242.0, "text": "The App Intents framework connects your app to Apple Intelligence,"}, {"start": 245.0, "text": "drawing on core operating system technologies,"}, {"start": 248.0, "text": "like the Spotlight semantic index."}, {"start": 250.0, "text": "It organizes and surfaces personal context from any supported app."}, {"start": 255.0, "text": "The app toolbox, which identifies features"}, {"start": 258.0, "text": "available across apps to serve a user request."}, {"start": 261.0, "text": "And the system orchestrator, which coordinates it all"}, {"start": 264.0, "text": "while protecting user privacy."}, {"start": 266.0, "text": "Together, in-app and system-wide intelligence unlock experiences that"}, {"start": 271.0, "text": "neither could deliver alone."}, {"start": 273.0, "text": "Your apps made more powerful by intelligence."}, {"start": 277.0, "text": "And intelligence made more meaningful by your apps."}, {"start": 281.0, "text": "Let’s dive into these frameworks and see how they’ll transform"}, {"start": 284.0, "text": "what your apps can do."}, {"start": 286.0, "text": "Here's Richard and Mary Beth."}, {"start": 291.0, "text": "The Foundation Models framework is a native Swift API"}, {"start": 294.0, "text": "that gives you direct access"}, {"start": 295.0, "text": "to the same on-device model that powers Apple intelligence."}, {"start": 299.0, "text": "And many of you have already adopted it, creating experiences for shopping apps"}, {"start": 304.0, "text": "like Wayfair, educational apps like CellWalk,"}, {"start": 307.0, "text": "local sports apps like CricHeroes and more,"}, {"start": 310.0, "text": "all running on device with no infrastructure costs"}, {"start": 313.0, "text": "or privacy trade-offs."}, {"start": 315.0, "text": "It's amazing to see how you've pushed the limits of what an on-device model can do."}, {"start": 320.0, "text": "We've got exciting updates for you."}, {"start": 322.0, "text": "Let’s start with a preview of the intelligence-powered features"}, {"start": 325.0, "text": "you will be able to build today."}, {"start": 326.0, "text": "Mary Beth, over to you."}, {"start": 328.0, "text": "This year, we're building a sample app all about the Japanese paper craft of origami."}, {"start": 334.0, "text": "It's a place to unwind and get creative with paper."}, {"start": 336.0, "text": "I’ll give you a quick tour."}, {"start": 338.0, "text": "Our app starts with a beautiful gallery of my origami projects."}, {"start": 342.0, "text": "And what’s special about these is that I’ve used foundation models"}, {"start": 345.0, "text": "to tailor origami projects to match a person’s interests and materials"}, {"start": 350.0, "text": "with step-by-step feedback."}, {"start": 352.0, "text": "Of course, it's more fun to craft with friends."}, {"start": 355.0, "text": "So our app has a built-in chat."}, {"start": 357.0, "text": "It's a fun focused place to plan meetups and talk about crafting."}, {"start": 361.0, "text": "Now I’m working on a cool feature to combine people’s interests"}, {"start": 364.0, "text": "into an origami project."}, {"start": 366.0, "text": "Here, I’ll take this paper Rachel’s bringing and mix in a photo of my dog"}, {"start": 372.0, "text": "to generate a fun project for us all to fold together."}, {"start": 375.0, "text": "With Foundation Models framework, my app analyzes the inspiration pictures"}, {"start": 379.0, "text": "to get a sense of the materials I have and this dog theme I have in mind."}, {"start": 383.0, "text": "It even translates the Japanese text and uses all of this context"}, {"start": 387.0, "text": "to brainstorm a few options."}, {"start": 390.0, "text": "I’ll choose this one."}, {"start": 392.0, "text": "The intelligence keeps going in a fully interactive tutorial."}, {"start": 396.0, "text": "That's a quick preview."}, {"start": 398.0, "text": "Let's talk about the framework."}, {"start": 400.0, "text": "This year, we’re taking the Foundation Models framework"}, {"start": 403.0, "text": "to the next level."}, {"start": 404.0, "text": "First, you get new capabilities like multimodal prompts with text and images."}, {"start": 410.0, "text": "This opens up new categories of experiences you can build"}, {"start": 414.0, "text": "with image understanding."}, {"start": 415.0, "text": "It's as simple as attaching an image to your prompt."}, {"start": 419.0, "text": "In addition to this, the Vision framework is now integrated,"}, {"start": 423.0, "text": "giving you purpose-built tools the model can use,"}, {"start": 426.0, "text": "such as OCR for precise text extraction,"}, {"start": 429.0, "text": "and barcode readers for quick code scanning all on-device."}, {"start": 434.0, "text": "Next, let's talk about server models."}, {"start": 437.0, "text": "On-device models are incredibly useful for many tasks."}, {"start": 440.0, "text": "Yet sometimes you might want a larger model for a more complex workflow."}, {"start": 445.0, "text": "That’s why we’re extending the framework so you can easily call server models"}, {"start": 449.0, "text": "like Claude, Gemini, and more"}, {"start": 451.0, "text": "to use features like tool calling and guided generation."}, {"start": 455.0, "text": "And any model provider can create a Swift package that conforms"}, {"start": 459.0, "text": "to the Language Model protocol."}, {"start": 461.0, "text": "So you can pick the one you want for your app."}, {"start": 464.0, "text": "In addition to this, we’re opening up access for those of you"}, {"start": 467.0, "text": "getting started with AI to use the Apple Foundation Model"}, {"start": 470.0, "text": "running on Private Cloud Compute with no cloud API cost,"}, {"start": 475.0, "text": "giving you access to frontier-level intelligence"}, {"start": 478.0, "text": "while ensuring your user’s data is not stored or accessible"}, {"start": 481.0, "text": "to Apple or anyone else."}, {"start": 484.0, "text": "Your users will have access to features leveraging the cloud model every day,"}, {"start": 488.0, "text": "and iCloud+ subscribers will have expanded access."}, {"start": 492.0, "text": "No matter the model you want to use, you can easily swap it in."}, {"start": 496.0, "text": "This makes the Foundation Models framework"}, {"start": 499.0, "text": "the best way to run any large language model in your app."}, {"start": 503.0, "text": "With more modalities and more models at your fingertips,"}, {"start": 506.0, "text": "the next thing you’ll need is more ways to put them to work."}, {"start": 509.0, "text": "That’s why we’re introducing a new open source Swift package,"}, {"start": 513.0, "text": "loaded with pre-built tools to help you get started"}, {"start": 516.0, "text": "with concepts like skills and utilities for context management."}, {"start": 521.0, "text": "For example, a task management app like Tiimo can use the package"}, {"start": 525.0, "text": "to pull in a skill that adapts its tone and recommendations to the user’s data,"}, {"start": 530.0, "text": "delivering a personalized brief to help them stay on top of their day."}, {"start": 534.0, "text": "This space evolves so quickly."}, {"start": 537.0, "text": "Tomorrow's abstractions may be very different from today's."}, {"start": 540.0, "text": "So these utilities from the open source package are created"}, {"start": 544.0, "text": "with new fundamental building blocks called Dynamic Profiles."}, {"start": 548.0, "text": "These are new declarative APIs in the Foundation Models framework"}, {"start": 552.0, "text": "for building truly adaptive AI experiences with less code,"}, {"start": 557.0, "text": "so you can orchestrate skills and sub-agents,"}, {"start": 560.0, "text": "swap tools in and out, and update instructions on the fly."}, {"start": 565.0, "text": "I'll walk you through how Dynamic Profiles powers intelligence in the Origami app."}, {"start": 569.0, "text": "First, let's open Xcode."}, {"start": 571.0, "text": "I'll start with a LanguageModelSession, which many of you already use."}, {"start": 575.0, "text": "Now, instead of creating a session with a fixed model, tools, and instructions,"}, {"start": 580.0, "text": "with Dynamic Profiles,"}, {"start": 582.0, "text": "you have the freedom to continuously update your session."}, {"start": 585.0, "text": "So I’ll choose a profile for the LanguageModelSession"}, {"start": 588.0, "text": "and start with the familiar Swift result builder syntax."}, {"start": 592.0, "text": "Here in the body, I’ll define my first Profile as a brainstorming helper"}, {"start": 596.0, "text": "that’s going to generate project ideas based on the photos I give it."}, {"start": 600.0, "text": "I’ll add modifiers to use Private Cloud Compute language model"}, {"start": 604.0, "text": "with temperature cranked up for creativity."}, {"start": 606.0, "text": "Now the beauty of a Dynamic Profile is that this body will always resolve"}, {"start": 610.0, "text": "to just one Profile driving my session at a time,"}, {"start": 613.0, "text": "but I can switch between as many Profiles"}, {"start": 616.0, "text": "as my feature needs in the same session."}, {"start": 620.0, "text": "So I’ll change Profile based on my app state."}, {"start": 623.0, "text": "Then I can add in a second Profile to handle tutorial generation."}, {"start": 628.0, "text": "Using Private Cloud Compute again with reasoning level set to deep,"}, {"start": 632.0, "text": "since this is my most challenging task."}, {"start": 635.0, "text": "Last, I'll add in a Profile that explains any origami jargon, like “valley fold”,"}, {"start": 640.0, "text": "that the user doesn't understand."}, {"start": 642.0, "text": "This is a nice smaller task."}, {"start": 644.0, "text": "I can send the on-device SystemLanguageModel"}, {"start": 646.0, "text": "to save on server calls."}, {"start": 648.0, "text": "Let's see it in action."}, {"start": 650.0, "text": "Here in my tutorial, I can now tap this term I don’t understand,"}, {"start": 653.0, "text": "and the on-device model generates a nice explanation."}, {"start": 657.0, "text": "In Dynamic Profiles, I’m swapping out models,"}, {"start": 659.0, "text": "but everything shares the same continuous transcript."}, {"start": 662.0, "text": "This means more contextual intelligence with less prompting."}, {"start": 666.0, "text": "Now let's use that in my Tutorial Profile."}, {"start": 668.0, "text": "Instructions and tools can be swapped in and out as well."}, {"start": 672.0, "text": "So I’ll use my app’s view model to check if the tutorial’s been generated,"}, {"start": 676.0, "text": "and if so, I’ll add in instructions and tools to help the model"}, {"start": 680.0, "text": "give high-quality feedback tailored to the user."}, {"start": 683.0, "text": "This body recomputes on every model turn, so my session will stay up to date."}, {"start": 688.0, "text": "Finally, do you see how my three Origami Profiles look a bit like three AI agents?"}, {"start": 694.0, "text": "That's because Dynamic Profiles are designed to be adaptable building blocks."}, {"start": 698.0, "text": "So if you want to build AI agents or skills"}, {"start": 701.0, "text": "or any other high-level abstraction, you can."}, {"start": 705.0, "text": "With the focus of flexibility and composability, these new APIs"}, {"start": 709.0, "text": "from the Foundation Models framework are here to grow with you."}, {"start": 712.0, "text": "To help you bring all of this to your apps,"}, {"start": 714.0, "text": "you’ll have access to a complete set of tools,"}, {"start": 717.0, "text": "from building to testing, to shipping with confidence."}, {"start": 720.0, "text": "That includes the new Evaluations framework,"}, {"start": 723.0, "text": "which gives you the ability to test your prompts and validate"}, {"start": 726.0, "text": "that your intelligence-powered features work reliably."}, {"start": 730.0, "text": "The upgraded Foundation Models instrument will help you visualize and debug"}, {"start": 734.0, "text": "model behavior in your apps."}, {"start": 737.0, "text": "And the new FM command line tool lets you prompt the model right from the terminal."}, {"start": 743.0, "text": "And there’s so much more, like a Python SDK,"}, {"start": 746.0, "text": "tool calling with images, and a new RAG tool"}, {"start": 749.0, "text": "powered by Core Spotlight that’s private to your app."}, {"start": 752.0, "text": "That’s the Foundation Models framework, providing you seamless access to"}, {"start": 757.0, "text": "multiple models with all new capabilities in the native Swift API."}, {"start": 761.0, "text": "Plus, we're doing something big."}, {"start": 764.0, "text": "Later this summer, the framework will be open source."}, {"start": 768.0, "text": "So the same Swift APIs you use in your app can now run on your server too,"}, {"start": 774.0, "text": "giving you a complete end-to-end AI workflow anywhere you deploy Swift."}, {"start": 778.0, "text": "You've seen how the Foundation Models framework connects to third-party models,"}, {"start": 782.0, "text": "Private Cloud Compute, and the on-device model."}, {"start": 785.0, "text": "You have the flexibility you need to get the right model for the job."}, {"start": 788.0, "text": "And when you want to bring a specific model into your app and run it on device,"}, {"start": 793.0, "text": "there's Core AI."}, {"start": 795.0, "text": "Core AI is a brand new framework built right into the platform,"}, {"start": 799.0, "text": "along with supporting tools and technologies."}, {"start": 802.0, "text": "It's designed to be the best way to bring and run models on device in your apps."}, {"start": 808.0, "text": "It delivers uncompromising performance through a modern memory-safe Swift API,"}, {"start": 812.0, "text": "with extensive tuning capabilities from fine-grained interest management"}, {"start": 817.0, "text": "and model specialization to custom GPU kernels."}, {"start": 821.0, "text": "And there are Python-based tools alongside the framework, so you can convert"}, {"start": 824.0, "text": "and optimize your PyTorch models for the Core AI runtime."}, {"start": 828.0, "text": "The framework is backed by deep integration"}, {"start": 830.0, "text": "into a new developer toolchain,"}, {"start": 832.0, "text": "with ahead-of-time compilation, dedicated Core AI instruments,"}, {"start": 836.0, "text": "and a powerful visual debugger to trace tensor values"}, {"start": 839.0, "text": "directly back to your original Python source code."}, {"start": 843.0, "text": "And it’s engineered to scale with your available compute."}, {"start": 847.0, "text": "So you can run a compact vision model in your iPhone app"}, {"start": 850.0, "text": "for real-time camera queries."}, {"start": 852.0, "text": "Or deploy a multi-billion parameter LLM in a Mac app right at your desk"}, {"start": 857.0, "text": "to power an agentic assistant for complex, multi-step workflows."}, {"start": 862.0, "text": "Whatever the device, whatever the model, it all runs on-device"}, {"start": 866.0, "text": "with zero server dependencies and zero token costs."}, {"start": 870.0, "text": "Core AI is optimized for performance on Apple silicon,"}, {"start": 873.0, "text": "and it empowers Apple Intelligence experiences"}, {"start": 876.0, "text": "across the system, including Siri."}, {"start": 878.0, "text": "And this year, Apple Intelligence offers even more opportunities for developers."}, {"start": 884.0, "text": "Over to Lori."}, {"start": 885.0, "text": "Apple Intelligence draws on personal context from across apps,"}, {"start": 889.0, "text": "understands what’s on screen, and can take actions to get things done."}, {"start": 893.0, "text": "And now you can integrate with its capabilities"}, {"start": 895.0, "text": "through the App Intents framework."}, {"start": 897.0, "text": "It's how our platforms understand what your apps can do."}, {"start": 900.0, "text": "With it, you can make your app’s content easier to find"}, {"start": 903.0, "text": "and its capabilities easier to use"}, {"start": 905.0, "text": "through the Action button, Shortcuts, widgets, and in Siri AI."}, {"start": 910.0, "text": "App Intents schemas make integration with Siri's capabilities easy."}, {"start": 914.0, "text": "Schemas are recognizable structures that Siri understands deeply,"}, {"start": 918.0, "text": "built on years of language model training."}, {"start": 921.0, "text": "We provide entity schemas"}, {"start": 923.0, "text": "for describing the content and concepts your app works with,"}, {"start": 926.0, "text": "and intent schemas for describing the actions it can perform."}, {"start": 930.0, "text": "Entity schemas enable personal context understanding."}, {"start": 933.0, "text": "By contributing your app’s content to the Spotlight semantic index,"}, {"start": 936.0, "text": "you can help your users find information from your app quickly and easily"}, {"start": 941.0, "text": "with attribution back to your app."}, {"start": 943.0, "text": "The indexing keys for important content properties are built right in,"}, {"start": 947.0, "text": "which means more understanding from less code."}, {"start": 949.0, "text": "Siri's understanding of intent schemas means people can make requests naturally."}, {"start": 954.0, "text": "They don’t need to learn specific phrases"}, {"start": 956.0, "text": "and you don’t have to define them in your code."}, {"start": 958.0, "text": "Schemas cover common app categories"}, {"start": 960.0, "text": "like task management, photo editing, and communication,"}, {"start": 963.0, "text": "and include a whole set of system-supported actions."}, {"start": 966.0, "text": "Just adopt the relevant intent schemas for the actions your app can perform"}, {"start": 970.0, "text": "to make them available to your users."}, {"start": 973.0, "text": "And because these schemas are system-defined,"}, {"start": 975.0, "text": "they’ll benefit from future updates."}, {"start": 977.0, "text": "That means as Siri’s language understanding evolves"}, {"start": 979.0, "text": "or as we add new support for languages or regional dialects,"}, {"start": 982.0, "text": "your intents will work there too, without any changes to your code."}, {"start": 987.0, "text": "Combining these capabilities with the new View Annotations API will let your users"}, {"start": 991.0, "text": "reference and take action on the content in your app when it's on screen."}, {"start": 995.0, "text": "So your users can interact with your app conversationally,"}, {"start": 998.0, "text": "saying what feels natural to them, not commands they have to memorize."}, {"start": 1002.0, "text": "Now, I'm going to show you how we've made our Origami app work with Siri."}, {"start": 1006.0, "text": "I already have some entities and intents that describe my app’s content"}, {"start": 1010.0, "text": "and actions, and the entities conform to the IndexedEntity protocol,"}, {"start": 1013.0, "text": "so they can be indexed into Spotlight."}, {"start": 1015.0, "text": "By also conforming to an entity schema, Siri will be able to discover and reason"}, {"start": 1020.0, "text": "over my app's content."}, {"start": 1022.0, "text": "I’ll make sure my Message, Contact, and Conversation entities all conform"}, {"start": 1026.0, "text": "to the relevant entity schemas by using the @AppEntity macro."}, {"start": 1030.0, "text": "I’m indexing these entities into Spotlight when my app finishes launching"}, {"start": 1034.0, "text": "to make sure everything’s in sync."}, {"start": 1036.0, "text": "I’ve rebuilt to get the latest changes, and now let’s see what I can do,"}, {"start": 1039.0, "text": "even when I’m not in the app."}, {"start": 1041.0, "text": "Hey Siri, who's coming to origami night?"}, {"start": 1051.0, "text": "Siri: Based on your messages in Origami, it looks like Kevin, Mary Beth, Rachel,"}, {"start": 1055.0, "text": "and Richard are discussing origami night."}, {"start": 1058.0, "text": "What's Richard bringing?"}, {"start": 1061.0, "text": "Siri: Richard mentioned he is thinking of bringing pizza."}, {"start": 1064.0, "text": "Awesome."}, {"start": 1065.0, "text": "But now I want to follow up, which means I need to act on this information."}, {"start": 1069.0, "text": "I can make the content Siri found actionable by conforming an intent"}, {"start": 1072.0, "text": "to the sendMessage schema."}, {"start": 1074.0, "text": "This time I’m using the @AppIntent macro,"}, {"start": 1076.0, "text": "since this is an action rather than content."}, {"start": 1080.0, "text": "I’ll build and run again, and now I can say, Siri, text Richard,"}, {"start": 1084.0, "text": "“Can you make one of the pizzas vegetarian?”"}, {"start": 1090.0, "text": "Siri: From Origami: Ready to send it?"}, {"start": 1092.0, "text": "Yes."}, {"start": 1095.0, "text": "Siri: It’s sent."}, {"start": 1096.0, "text": "Great. Message sent."}, {"start": 1098.0, "text": "I’d also like to let people reference what’s on screen in my app"}, {"start": 1101.0, "text": "just by saying “the second message” or “this photo”."}, {"start": 1104.0, "text": "The new View Annotations API lets me associate my views with entities,"}, {"start": 1108.0, "text": "which can then be passed to my app’s intents, making them actionable."}, {"start": 1112.0, "text": "My Message List view contains all the individual messages in a conversation."}, {"start": 1116.0, "text": "I can use a new view modifier to map each message row"}, {"start": 1119.0, "text": "to its respective MessageEntity."}, {"start": 1122.0, "text": "Let’s try it out."}, {"start": 1124.0, "text": "Hey Siri, send this photo to Kevin and say,"}, {"start": 1127.0, "text": "“Rachel got us some paper to practice our folds."}, {"start": 1129.0, "text": "What color would you like?”"}, {"start": 1137.0, "text": "Siri: From Origami: Ready to send it?"}, {"start": 1140.0, "text": "Yes."}, {"start": 1142.0, "text": "Siri: It’s sent."}, {"start": 1144.0, "text": "And Siri sends the photo with my message."}, {"start": 1146.0, "text": "By combining personal context, common app actions,"}, {"start": 1149.0, "text": "and on-screen awareness,"}, {"start": 1151.0, "text": "your app can become part of the intelligent fabric of the system."}, {"start": 1154.0, "text": "Through Siri, users can access it through natural language,"}, {"start": 1157.0, "text": "discover it through semantic search,"}, {"start": 1159.0, "text": "and integrate it into their daily workflows."}, {"start": 1161.0, "text": "Now, back to Josh."}, {"start": 1165.0, "text": "This is our vision for an intelligent platform."}, {"start": 1169.0, "text": "Rich, native experiences and intelligent natural language interfaces"}, {"start": 1173.0, "text": "working together."}, {"start": 1175.0, "text": "As app developers, this represents an incredible opportunity."}, {"start": 1179.0, "text": "You can enhance your app’s experiences through natural language with Siri,"}, {"start": 1183.0, "text": "build powerful AI features with the Foundation Models framework,"}, {"start": 1187.0, "text": "and even run your own models on-device with Core AI."}, {"start": 1192.0, "text": "If you’re using a custom model to power a feature within your app,"}, {"start": 1196.0, "text": "Core AI is the right technology to use."}, {"start": 1199.0, "text": "Your models will perform efficiently across all devices,"}, {"start": 1203.0, "text": "and it’s built into the platform, so your apps always benefit"}, {"start": 1206.0, "text": "from the latest fixes and enhancements."}, {"start": 1210.0, "text": "And if you're an enthusiast who is experimenting with, training, researching,"}, {"start": 1214.0, "text": "or fine-tuning generative models, or if you're running a local inference server,"}, {"start": 1219.0, "text": "our array framework, MLX, makes it easy to explore"}, {"start": 1223.0, "text": "cutting-edge innovations and technologies."}, {"start": 1226.0, "text": "It now supports Metal 4, GPU Neural Accelerators, and it can even scale"}, {"start": 1231.0, "text": "training across multiple Macs with RDMA over Thunderbolt."}, {"start": 1236.0, "text": "It's all open source and it's faster than ever."}, {"start": 1240.0, "text": "The breadth of capabilities offered by Apple Intelligence and powered by"}, {"start": 1244.0, "text": "Apple silicon makes Apple’s platforms the best place to build and deliver"}, {"start": 1249.0, "text": "the next generation of intelligence-enhanced apps and games."}, {"start": 1253.0, "text": "Now let’s take a look a level deeper at what makes all of this possible -"}, {"start": 1257.0, "text": "the systems your apps depend on, from the frameworks you call"}, {"start": 1261.0, "text": "to the processes that schedule your work, manage your memory, and render your UI."}, {"start": 1267.0, "text": "We took an especially close look at the performance and quality"}, {"start": 1270.0, "text": "of these foundations, and you’ll see a multitude of platform improvements"}, {"start": 1274.0, "text": "in this year’s releases."}, {"start": 1276.0, "text": "When you rebuild with the new SDK, your apps will launch faster"}, {"start": 1280.0, "text": "and feel more responsive."}, {"start": 1282.0, "text": "You'll see refinements and platform improvements across frameworks media,"}, {"start": 1287.0, "text": "search, and accessibility, enhancements to Swift and SwiftUI, and a lot more,"}, {"start": 1293.0, "text": "especially around design."}, {"start": 1295.0, "text": "Last year, the new design with Liquid Glass"}, {"start": 1298.0, "text": "brought a unified design language"}, {"start": 1300.0, "text": "built for a world where your experience moves across devices."}, {"start": 1304.0, "text": "The new design is making apps more expressive and delightful"}, {"start": 1308.0, "text": "while staying instantly familiar to users."}, {"start": 1311.0, "text": "It looks great in apps like Tide Guide, where subtle, interactive highlights"}, {"start": 1316.0, "text": "respond as users scroll through tide data and charts."}, {"start": 1320.0, "text": "And SketchPro, where translucent brush panels and controls"}, {"start": 1323.0, "text": "let artwork show through, even while you switch between tools."}, {"start": 1328.0, "text": "Throughout the last year, we’ve been refining the design,"}, {"start": 1331.0, "text": "and that journey continues"}, {"start": 1332.0, "text": "with a new set of design updates in the 27 releases."}, {"start": 1336.0, "text": "Apps that have already adopted Liquid Glass benefit"}, {"start": 1339.0, "text": "from many of these improvements automatically."}, {"start": 1342.0, "text": "To tell you more, here's Cindy."}, {"start": 1346.0, "text": "In this year’s releases, you’ll see updates to the foundations"}, {"start": 1349.0, "text": "of how Liquid Glass is built, refinements to the new design"}, {"start": 1353.0, "text": "that improve consistency, and new ways for iOS apps"}, {"start": 1357.0, "text": "to adapt across devices and screen sizes."}, {"start": 1360.0, "text": "Let's review the changes you'll see in your apps."}, {"start": 1363.0, "text": "To maintain exceptional readability, we tuned Liquid Glass"}, {"start": 1366.0, "text": "so it more effectively diffuses complex content behind it."}, {"start": 1370.0, "text": "And to establish more depth and separation, we also introduced"}, {"start": 1373.0, "text": "a darkened edge along with brighter specular highlights."}, {"start": 1377.0, "text": "We also made it more personalizable with a new slider in settings"}, {"start": 1381.0, "text": "to adjust Liquid Glass anywhere from ultra clear to fully tinted,"}, {"start": 1385.0, "text": "allowing users to choose the look that works best for them."}, {"start": 1389.0, "text": "Apps already using Liquid Glass get these improvements automatically"}, {"start": 1392.0, "text": "when they run on this year’s releases without even needing to recompile."}, {"start": 1396.0, "text": "Liquid Glass seamlessly adapts to a variety of accessibility settings"}, {"start": 1400.0, "text": "users may choose, such as reducing transparency or increasing contrast."}, {"start": 1405.0, "text": "And now macOS 27 also supports the “show borders” environment value,"}, {"start": 1410.0, "text": "just like iOS."}, {"start": 1412.0, "text": "So you can adapt your macOS app's custom controls for this setting as well."}, {"start": 1416.0, "text": "Sidebars expand to the edges on Mac and iPad, providing clearer structure"}, {"start": 1421.0, "text": "while still refracting content from your app and the wallpaper."}, {"start": 1425.0, "text": "And icons in the sidebar regain their color using your app’s accent color,"}, {"start": 1430.0, "text": "giving your app more personality and making it more clear which window is key."}, {"start": 1434.0, "text": "List and Label APIs provide these updates automatically"}, {"start": 1438.0, "text": "and support customizing the tint per item."}, {"start": 1441.0, "text": "And every window on macOS now also has the same tighter corner radius,"}, {"start": 1446.0, "text": "ensuring greater consistency across all apps."}, {"start": 1450.0, "text": "When content scrolls under floating bars, a uniform toolbar appears across the top"}, {"start": 1455.0, "text": "and keeps the text legible while improving contrast."}, {"start": 1458.0, "text": "This effect is applied automatically for standard toolbars"}, {"start": 1462.0, "text": "and can be customized using the existing scroll edge effect APIs."}, {"start": 1467.0, "text": "We also thought about how icons and menus can be used intentionally"}, {"start": 1471.0, "text": "to call attention to the most important actions,"}, {"start": 1474.0, "text": "both on macOS and iPadOS."}, {"start": 1476.0, "text": "While icons are hidden by default, there’s an API to show icons"}, {"start": 1480.0, "text": "for key app actions."}, {"start": 1482.0, "text": "We’re also updating how Liquid Glass shows up in icons,"}, {"start": 1486.0, "text": "making them sharper and more defined."}, {"start": 1488.0, "text": "This updated rendering applies to all app icons,"}, {"start": 1492.0, "text": "and we’ve introduced new features such as refraction"}, {"start": 1495.0, "text": "that can be selectively used for added character."}, {"start": 1499.0, "text": "And with Icon Composer, you can now design your icons"}, {"start": 1502.0, "text": "out of multiple layers of Liquid Glass."}, {"start": 1504.0, "text": "It’s been updated with new annotation features to add refraction"}, {"start": 1508.0, "text": "or dial in Liquid Glass content effects."}, {"start": 1511.0, "text": "And it provides an interactive preview of how your icon will look"}, {"start": 1515.0, "text": "on earlier releases."}, {"start": 1517.0, "text": "Together, these updates culminate in a more focused and approachable experience"}, {"start": 1521.0, "text": "across your apps and across platforms."}, {"start": 1524.0, "text": "Next, let’s talk about app adaptability."}, {"start": 1528.0, "text": "iOS apps show up in more places than ever,"}, {"start": 1531.0, "text": "on iPad as an iPhone app, or on Mac through iPhone Mirroring."}, {"start": 1535.0, "text": "When your iOS app shows up in these other contexts with larger displays,"}, {"start": 1540.0, "text": "users want to be able to take advantage of the extra space"}, {"start": 1543.0, "text": "to see more information."}, {"start": 1545.0, "text": "So this year we’re introducing support to resize iOS apps"}, {"start": 1549.0, "text": "in iPhone Mirroring and on iPad."}, {"start": 1552.0, "text": "Let’s see how this works with the Origami app."}, {"start": 1555.0, "text": "Once you rebuild with the latest SDK,"}, {"start": 1557.0, "text": "your app is automatically opted in to resizability."}, {"start": 1560.0, "text": "Since Origami is a SwiftUI app, it’s already taking advantage"}, {"start": 1563.0, "text": "of scene lifecycle and standard framework support for basic resizability."}, {"start": 1568.0, "text": "If you’re already using SwiftUI, Auto Layout, or responding to"}, {"start": 1572.0, "text": "size class changes, you are well on your way"}, {"start": 1574.0, "text": "to supporting full resizability."}, {"start": 1576.0, "text": "If you have custom views, you’ll want to update them to using auto layout"}, {"start": 1580.0, "text": "and trait collections for layout decisions."}, {"start": 1583.0, "text": "Using the new resizable iOS simulator and Previews,"}, {"start": 1587.0, "text": "you can test across a variety of screen sizes right in Xcode,"}, {"start": 1590.0, "text": "so you’ll see exactly how your layout performs."}, {"start": 1594.0, "text": "And we’re providing a skill for coding agents that will help you find and fix"}, {"start": 1597.0, "text": "common resizability issues."}, {"start": 1600.0, "text": "Now, instead of designing for specific devices and orientations,"}, {"start": 1604.0, "text": "you’re designing for a dynamic range of sizes and aspect ratios."}, {"start": 1609.0, "text": "To provide the best experience when using iPhone Mirroring,"}, {"start": 1612.0, "text": "update your app to be able to adapt and support any size."}, {"start": 1616.0, "text": "Resizable simulator, Previews, and iPhone Mirroring all make it easy"}, {"start": 1621.0, "text": "to ensure your app is as dynamic and flexible as possible."}, {"start": 1625.0, "text": "Next, let’s talk about SwiftUI."}, {"start": 1627.0, "text": "Here's Franck."}, {"start": 1629.0, "text": "SwiftUI is the best way to build apps for any Apple device."}, {"start": 1634.0, "text": "We designed SwiftUI to capture everything we know"}, {"start": 1637.0, "text": "about building great apps on our platforms."}, {"start": 1641.0, "text": "It gracefully handles the complexities"}, {"start": 1643.0, "text": "of layout, animation, and platform integration"}, {"start": 1647.0, "text": "so you can focus on what makes your app yours."}, {"start": 1651.0, "text": "And as new capabilities like Liquid Glass are added, apps get these features easily"}, {"start": 1658.0, "text": "because they’re designed with SwiftUI in mind."}, {"start": 1661.0, "text": "New apps like Xogot are built with SwiftUI"}, {"start": 1664.0, "text": "because they want to feel truly at home on Apple platforms."}, {"start": 1668.0, "text": "Xogot is a game development environment that brings the open source Godot engine"}, {"start": 1672.0, "text": "to Apple devices."}, {"start": 1674.0, "text": "It started on iPad, expanded to iPhone, and when the time came to bring it to Mac,"}, {"start": 1679.0, "text": "it felt completely natural."}, {"start": 1681.0, "text": "And apps that previously used cross-platform or web technologies"}, {"start": 1685.0, "text": "like Notion are migrating their user interface to SwiftUI"}, {"start": 1690.0, "text": "because they want a level of performance and UI consistency"}, {"start": 1694.0, "text": "that other technologies can’t deliver."}, {"start": 1697.0, "text": "With powerful agentic coding tools, porting code to Swift"}, {"start": 1701.0, "text": "has never been easier."}, {"start": 1703.0, "text": "Of course, we reach for SwiftUI ourselves whenever we build apps."}, {"start": 1708.0, "text": "For example, SwiftUI made it easy to build a new Siri app by enabling us"}, {"start": 1714.0, "text": "to share code across all our platforms and Creator Studio apps like Logic Pro,"}, {"start": 1720.0, "text": "build new features with SwiftUI for high performance"}, {"start": 1724.0, "text": "and cross-platform support."}, {"start": 1726.0, "text": "Since we rely on SwiftUI ourselves, every improvement we make for our own apps"}, {"start": 1732.0, "text": "becomes an improvement for your apps too."}, {"start": 1735.0, "text": "And this is a big year for SwiftUI."}, {"start": 1738.0, "text": "With richer interactions that help you write less custom code,"}, {"start": 1742.0, "text": "with speed making your apps much faster,"}, {"start": 1746.0, "text": "and finally, with new capabilities for your apps."}, {"start": 1750.0, "text": "Let’s start with interactions."}, {"start": 1752.0, "text": "This year, SwiftUI brings more dynamic interactions to your app"}, {"start": 1756.0, "text": "like reorderable containers, which makes it super easy"}, {"start": 1760.0, "text": "to add drag to reorder to any container."}, {"start": 1763.0, "text": "Building a grid reordering experience outside of lists, like with this grid"}, {"start": 1768.0, "text": "in the Origami app, used to require a lot of code."}, {"start": 1773.0, "text": "Now, it is just as simple as adding .reorderable() to your ForEach"}, {"start": 1778.0, "text": "and .reorderContainer() to the parent."}, {"start": 1781.0, "text": "And just like that, I can customize the order of my Origami models."}, {"start": 1786.0, "text": "SwiftUI handles the lift and the drop animations and it works with any container"}, {"start": 1792.0, "text": "like grids and stacks."}, {"start": 1794.0, "text": "Now, for Origami models I feel a little less proud of,"}, {"start": 1799.0, "text": "SwiftUI now supports swipe actions inside any container as well."}, {"start": 1803.0, "text": "I can delete a custom row with a swipe"}, {"start": 1806.0, "text": "by adding the existing️ .swipeActions() modifier to my row"}, {"start": 1810.0, "text": "and .swipeActionsContainer() to the scrollable container."}, {"start": 1813.0, "text": "This provides great flexibility for quick actions on my custom row."}, {"start": 1818.0, "text": "Finally, text selection got more flexible too."}, {"start": 1822.0, "text": "On iOS, it gains the same. full-fidelity selection"}, {"start": 1827.0, "text": "already found in TextField and TextEditor."}, {"start": 1831.0, "text": "And on macOS, it now supports custom text renderers, text vibrancy,"}, {"start": 1836.0, "text": "and vertical text."}, {"start": 1838.0, "text": "Next, let’s take a look at speed."}, {"start": 1841.0, "text": "This is always a priority for us, but even more so this year,"}, {"start": 1846.0, "text": "and you will see many improvements without any changes on your end."}, {"start": 1850.0, "text": "To start, we’ve been gradually unifying the architectures of SwiftUI, AppKit,"}, {"start": 1856.0, "text": "and UIKit, and this year, they share a common foundation across many controls."}, {"start": 1862.0, "text": "So wherever your app is running,"}, {"start": 1864.0, "text": "they can benefit from the same on-the-line improvements."}, {"start": 1868.0, "text": "For example, menu pickers on macOS"}, {"start": 1871.0, "text": "are now better equipped to smoothly handle large lists of items."}, {"start": 1876.0, "text": "And in nested stack layouts,"}, {"start": 1878.0, "text": "whereas SwiftUI used to measure each child multiple times"}, {"start": 1882.0, "text": "to resolve their flexibility, it now short-circuits computations"}, {"start": 1886.0, "text": "where they’re not needed,"}, {"start": 1887.0, "text": "meaning layouts now resize up to twice as fast."}, {"start": 1891.0, "text": "And nothing saves performance like avoiding unnecessary work."}, {"start": 1895.0, "text": "SwiftUI now only initializes state objects when they're first loaded."}, {"start": 1901.0, "text": "Previously, a new temporary instance of the state object would get created"}, {"start": 1907.0, "text": "every time the view is reinitialized."}, {"start": 1909.0, "text": "You get this improvement for free because state is now lazy under the hood"}, {"start": 1914.0, "text": "and was converted from a dynamic property to a macro."}, {"start": 1919.0, "text": "And when it comes to loading images, AsyncImage avoids redundancies as well."}, {"start": 1924.0, "text": "It now caches its content automatically using standard HTTP caching,"}, {"start": 1930.0, "text": "so images are downloaded once and only re-fetched when needed."}, {"start": 1934.0, "text": "Finally, let's talk about new capabilities starting with toolbars."}, {"start": 1939.0, "text": "With the new resizability features, optimizing your app for a dynamic range"}, {"start": 1944.0, "text": "of sizes and aspect ratios is more important than ever."}, {"start": 1950.0, "text": "And toolbars are central to that experience."}, {"start": 1953.0, "text": "This year, SwiftUI gives you finer control over how toolbar items adapt to space."}, {"start": 1960.0, "text": "Use the new visibilityPriority modifier to mark your most important items high."}, {"start": 1966.0, "text": "And SwiftUI keeps them visible longer as space shrinks."}, {"start": 1970.0, "text": "Less prominent actions, like archive or delete, can be added to"}, {"start": 1975.0, "text": "the new toolbars overflow menu container, which groups them in an overflow menu."}, {"start": 1980.0, "text": "And finally, the new topBarPinnedTrailing placement anchors items"}, {"start": 1985.0, "text": "to the trailing edge, no matter how the toolbar reflows."}, {"start": 1989.0, "text": "Now, when I resize the window, the toolbar stays organized exactly how I want."}, {"start": 1994.0, "text": "Important buttons stay visible."}, {"start": 1997.0, "text": "Deprioritized ones are in the overflow menu and share is always pinned"}, {"start": 2003.0, "text": "to the trailing edge."}, {"start": 2004.0, "text": "Tabs can also be distinguished with the new prominent tab role"}, {"start": 2009.0, "text": "pinning the tab to the trailing edge of the screen."}, {"start": 2012.0, "text": "SwiftUI also opens up new ground for document-based apps"}, {"start": 2017.0, "text": "with a new document infrastructure that provides a ton of functionality"}, {"start": 2022.0, "text": "out of the box, like first-class URL access"}, {"start": 2025.0, "text": "for fully customizable reading and writing to disk,"}, {"start": 2029.0, "text": "the kind that powers apps like Xcode or Pages."}, {"start": 2033.0, "text": "For example, with direct access to the file URL, you now have the flexibility"}, {"start": 2038.0, "text": "to read just the parts of a file you need and write only the pieces that changed,"}, {"start": 2044.0, "text": "not the entire file."}, {"start": 2046.0, "text": "You can also observe and update document attributes"}, {"start": 2049.0, "text": "using the provided observable configuration."}, {"start": 2052.0, "text": "The new document API integrates deeply with modern Swift,"}, {"start": 2056.0, "text": "with support for observation, Swift concurrency, and so much more."}, {"start": 2061.0, "text": "Lastly, here is something pretty awesome."}, {"start": 2065.0, "text": "The Spatial Preview framework gives Mac apps new ways"}, {"start": 2069.0, "text": "to extend in space around users wearing Apple Vision Pro."}, {"start": 2073.0, "text": "When you adopt this new API in your app, a 3D model can become spatial"}, {"start": 2078.0, "text": "when you stream to Apple Vision Pro, allowing your users to preview, edit,"}, {"start": 2084.0, "text": "and share objects and models in real time."}, {"start": 2087.0, "text": "Beyond those we've mentioned already, there are many other new improvements,"}, {"start": 2092.0, "text": "including better type checking performance with content builders,"}, {"start": 2096.0, "text": "a new alert binding API, and to support adjusting cross-fade transitions."}, {"start": 2102.0, "text": "Together, these platform improvements bring more speed, richer interactions, and"}, {"start": 2108.0, "text": "powerful new capabilities to SwiftUI that you can take advantage of."}, {"start": 2113.0, "text": "Now, let's take a look at Swift itself."}, {"start": 2116.0, "text": "Here's Holly."}, {"start": 2118.0, "text": "Swift is designed to be the language you reach for at every layer of the stack."}, {"start": 2123.0, "text": "Whether you’re building full-featured mobile apps, internet-scale services, or"}, {"start": 2127.0, "text": "embedded firmware, Swift helps you write code that's fast, expressive, and safe."}, {"start": 2133.0, "text": "Swift's performance, depth, and unmatched interoperability make it the natural"}, {"start": 2138.0, "text": "successor to C and C++ for low-level systems and server programming."}, {"start": 2143.0, "text": "And its approachability and expressiveness make it ideal for higher-level development"}, {"start": 2148.0, "text": "like apps and frameworks."}, {"start": 2150.0, "text": "We think Swift is the only language with this breadth."}, {"start": 2154.0, "text": "That's what makes Swift a language you can keep reaching for as your stack grows."}, {"start": 2159.0, "text": "Including outside Apple platforms, where the tools for development on Linux,"}, {"start": 2163.0, "text": "Windows, Android, and the web are available on Swift.org."}, {"start": 2168.0, "text": "Many of you are extending your use of Swift to additional platforms"}, {"start": 2172.0, "text": "and the server so you can reuse code and benefit from Swift’s high performance"}, {"start": 2177.0, "text": "across your entire stack, like Flighty, which uses Swift in their services"}, {"start": 2182.0, "text": "to share the code that tracks airport visits"}, {"start": 2184.0, "text": "between the app and backend."}, {"start": 2186.0, "text": "Or GoodNotes, which uses Swift for WebAssembly to bring the app to the web,"}, {"start": 2191.0, "text": "Chrome OS, Android, and Windows, reusing over 100,000 lines of code."}, {"start": 2197.0, "text": "Or Frameo, which uses Swift-Java interoperability to share Swift libraries"}, {"start": 2201.0, "text": "between the iOS app and the PhotoFrame software written in Java."}, {"start": 2206.0, "text": "Interoperability means you can bring Swift into C, C++, and Java systems"}, {"start": 2211.0, "text": "you already have."}, {"start": 2212.0, "text": "So you can get Swift's benefits at every layer without a rewrite."}, {"start": 2217.0, "text": "At Apple, we've been building with Swift at every layer of our own stack."}, {"start": 2222.0, "text": "Foundation paved the way for Objective-C frameworks"}, {"start": 2224.0, "text": "to move to native Swift under the hood."}, {"start": 2227.0, "text": "AppKit and UIKit have followed suit by using Swift and SwiftUI extensively"}, {"start": 2232.0, "text": "in their implementation."}, {"start": 2233.0, "text": "WebKit, the open source web engine that powers Safari,"}, {"start": 2237.0, "text": "is a large and security-critical C++ code base."}, {"start": 2241.0, "text": "Using Swift’s safe C++ interoperability, WebKit is replacing core components"}, {"start": 2247.0, "text": "with Swift versions incrementally."}, {"start": 2249.0, "text": "In the networking stack, the QUIC transport layer was rewritten in Swift."}, {"start": 2254.0, "text": "Later this month, the project will be open sourced and available"}, {"start": 2257.0, "text": "for cross-platform use through SwiftNIO integration."}, {"start": 2260.0, "text": "You can follow along or get involved"}, {"start": 2263.0, "text": "through the vibrant open source community on Swift.org."}, {"start": 2266.0, "text": "Further down the stack, more security and performance critical systems"}, {"start": 2270.0, "text": "moved to Swift this year."}, {"start": 2272.0, "text": "The TrueType font rendering engine replaced decades of hand-optimized C"}, {"start": 2277.0, "text": "with Swift code that’s not only memory safe, but also faster."}, {"start": 2281.0, "text": "At the lowest level, we’ve written hundreds of thousands of lines"}, {"start": 2285.0, "text": "of Swift code across bare metal firmware, coprocessors, and drivers."}, {"start": 2290.0, "text": "For the 27 releases, we've started writing parts of the core operating system kernel"}, {"start": 2295.0, "text": "in Swift."}, {"start": 2297.0, "text": "As Swift becomes more capable in these domains, we’re staying true"}, {"start": 2300.0, "text": "to one of Swift’s most important design goals:"}, {"start": 2304.0, "text": "it’s fun."}, {"start": 2306.0, "text": "It's natural to write and iterate on your ideas in Swift, and the compiler is there"}, {"start": 2310.0, "text": "to catch mistakes along the way."}, {"start": 2313.0, "text": "The latest updates are focused on improving your workflow"}, {"start": 2316.0, "text": "so you can focus on the fun part:"}, {"start": 2318.0, "text": "writing great code with confidence."}, {"start": 2321.0, "text": "Swift 6.4 is here, built to make everyday tasks feel effortless."}, {"start": 2326.0, "text": "I'll show you just a few examples."}, {"start": 2328.0, "text": "When your code base is undergoing a migration or incremental adoption"}, {"start": 2332.0, "text": "of new features, sometimes it’s not realistic to address all compiler warnings"}, {"start": 2337.0, "text": "across your project at once."}, {"start": 2339.0, "text": "You can now suppress warnings in specific parts of your code, and you can promote"}, {"start": 2344.0, "text": "warnings to errors in places where you want strict enforcement."}, {"start": 2348.0, "text": "Availability attributes can get long and repetitive when you’re writing code"}, {"start": 2352.0, "text": "for multiple Apple platforms."}, {"start": 2354.0, "text": "Now, instead of listing out every Apple platform with the same version number,"}, {"start": 2359.0, "text": "you can simply write ‘anyAppleOS’."}, {"start": 2361.0, "text": "The limitation on async calls in a defer block is gone,"}, {"start": 2365.0, "text": "and awaiting inside a defer just works."}, {"start": 2368.0, "text": "No matter what you’re building, Swift’s compiler diagnostics"}, {"start": 2372.0, "text": "are a daily companion, helping you catch mistakes early"}, {"start": 2375.0, "text": "and guiding you toward correct code."}, {"start": 2378.0, "text": "If you’ve spent time writing Swift code,"}, {"start": 2380.0, "text": "you’ve probably encountered this error message:"}, {"start": 2383.0, "text": "“The compiler is unable to type check this expression in reasonable time.”"}, {"start": 2387.0, "text": "This can happen in complex operator expressions, closures,"}, {"start": 2391.0, "text": "or in deeply nested SwiftUI view bodies."}, {"start": 2395.0, "text": "This is frustrating, and we’ve made it a lot better."}, {"start": 2398.0, "text": "In many common cases, code that hit this fallback error will now either"}, {"start": 2403.0, "text": "compile successfully or give you a more actionable error to work with."}, {"start": 2408.0, "text": "We know this area is important for a smooth workflow,"}, {"start": 2411.0, "text": "and we’re continuing to invest in it."}, {"start": 2413.0, "text": "Swift 6.4 makes you more productive in day-to-day code,"}, {"start": 2416.0, "text": "and it brings that same care to the more specialized corners"}, {"start": 2420.0, "text": "of your project."}, {"start": 2421.0, "text": "There's never been a better time to go full stack with Swift."}, {"start": 2425.0, "text": "Now back to Josh."}, {"start": 2428.0, "text": "So those are the platform improvements in this year’s releases."}, {"start": 2432.0, "text": "Now, to move ahead, sometimes we have to leave something behind."}, {"start": 2436.0, "text": "As we said last year, macOS Tahoe was the final release to support Intel Macs."}, {"start": 2442.0, "text": "The transition of macOS to Apple silicon is now complete, enabling us to focus"}, {"start": 2447.0, "text": "on a single architecture across the entire ecosystem."}, {"start": 2451.0, "text": "This can benefit your apps as well."}, {"start": 2453.0, "text": "You can now ship Apple silicon-only binaries on the Mac App Store,"}, {"start": 2457.0, "text": "reducing your app’s download size and letting you focus your testing"}, {"start": 2461.0, "text": "on a single architecture."}, {"start": 2463.0, "text": "And with all the refinements to the new design with Liquid Glass,"}, {"start": 2466.0, "text": "it’s time to complete your migration there too."}, {"start": 2469.0, "text": "We'll be removing support for opting to use the old design."}, {"start": 2473.0, "text": "So once your app is recompiled with Xcode 27, it will automatically"}, {"start": 2477.0, "text": "begin to use the new design with Liquid Glass."}, {"start": 2481.0, "text": "With so many improvements across the system, your apps and games"}, {"start": 2485.0, "text": "will look and feel better than ever on this year’s releases."}, {"start": 2489.0, "text": "Now, let’s turn to your productivity and the tools you use"}, {"start": 2493.0, "text": "to build with and for our platforms."}, {"start": 2496.0, "text": "Intelligence is deeply transforming how you write code,"}, {"start": 2499.0, "text": "add new features, and build apps."}, {"start": 2502.0, "text": "Last year, we brought AI coding assistance to Xcode,"}, {"start": 2505.0, "text": "and so many of you embraced it immediately."}, {"start": 2509.0, "text": "It's helping you write code faster and adopt new APIs more easily."}, {"start": 2514.0, "text": "This space moves really fast, so we've picked up the pace of our releases,"}, {"start": 2519.0, "text": "delivering new Xcode capabilities to you faster than ever before."}, {"start": 2523.0, "text": "Earlier this year, we brought coding agents to Xcode, along with tools allowing"}, {"start": 2528.0, "text": "agents to grab a preview, search documentation, and more,"}, {"start": 2532.0, "text": "powered by the Model Context Protocol."}, {"start": 2535.0, "text": "With MCP, Xcode also connects to the tools you already use,"}, {"start": 2539.0, "text": "from design apps like Figma to services like GitHub."}, {"start": 2543.0, "text": "And Xcode includes a built-in integration for agents from Anthropic, OpenAI,"}, {"start": 2549.0, "text": "and now Google."}, {"start": 2551.0, "text": "Today, Xcode adds support for Agent Client Protocol,"}, {"start": 2554.0, "text": "so you can bring any compatible agent into Xcode."}, {"start": 2558.0, "text": "ACP support and Gemini integration"}, {"start": 2560.0, "text": "are shipping in an update to Xcode 26 available today."}, {"start": 2564.0, "text": "And there’s more coming in Xcode 27."}, {"start": 2567.0, "text": "Here's Ken."}, {"start": 2568.0, "text": "From the first line of code to the App Store,"}, {"start": 2571.0, "text": "Xcode is where you build the best apps for Apple platforms."}, {"start": 2574.0, "text": "Millions of you live in it for writing and debugging your code"}, {"start": 2577.0, "text": "with coding agents right alongside,"}, {"start": 2580.0, "text": "designing interfaces in SwiftUI and previewing them in real time,"}, {"start": 2584.0, "text": "testing across devices and simulators to catch issues before your users do,"}, {"start": 2589.0, "text": "and profiling performance with instruments, keeping your apps fast,"}, {"start": 2593.0, "text": "responsive, and efficient."}, {"start": 2595.0, "text": "This year, Xcode has two big stories."}, {"start": 2598.0, "text": "The first is intelligence, and we have a lot to talk about in a minute."}, {"start": 2603.0, "text": "The second is the daily experience, how Xcode feels to use."}, {"start": 2608.0, "text": "Now just like you, we spend hours in Xcode every day."}, {"start": 2613.0, "text": "We build all our operating systems and apps with it."}, {"start": 2616.0, "text": "In fact, we build Xcode with Xcode."}, {"start": 2620.0, "text": "So it needs to feel like home while being fast, fun, and personal."}, {"start": 2625.0, "text": "And we've heard your feedback and improved Xcode across the board."}, {"start": 2629.0, "text": "It's faster at loading projects."}, {"start": 2631.0, "text": "We fixed top crashes and spins."}, {"start": 2634.0, "text": "Debug sessions are more reliable, with faster expression evaluation,"}, {"start": 2639.0, "text": "and a console that can handle more intensive logging without hitching."}, {"start": 2644.0, "text": "Xcode 27 is 30% smaller."}, {"start": 2647.0, "text": "Now, Apple silicon-only,"}, {"start": 2649.0, "text": "with agents, documentation, and other components downloading in the background,"}, {"start": 2654.0, "text": "so you're always up to date."}, {"start": 2656.0, "text": "Now, let's take a look at the experience."}, {"start": 2658.0, "text": "First, your Xcode settings are now automatically saved to iCloud."}, {"start": 2663.0, "text": "When I'm setting up a new Mac like this, Xcode offers to import them."}, {"start": 2667.0, "text": "I'll pull in the settings from my iMac."}, {"start": 2669.0, "text": "I can sign in with my Apple ID."}, {"start": 2671.0, "text": "Xcode fills in my Git config too."}, {"start": 2674.0, "text": "And just like that, I'm ready to code with my new Mac."}, {"start": 2678.0, "text": "Now, let’s create a new project. Watch this."}, {"start": 2680.0, "text": "I'll select new project, then app and boom, I'm in the editor."}, {"start": 2686.0, "text": "No file name, no bundle ID, no setup."}, {"start": 2690.0, "text": "Of course I can specify all those things later when I’m ready."}, {"start": 2694.0, "text": "This is great for exploring an idea, a new API, or prototyping a view."}, {"start": 2700.0, "text": "Alright, now I'll open the Origami project."}, {"start": 2704.0, "text": "Xcode 27 looks beautiful with the design refinements of macOS 27."}, {"start": 2709.0, "text": "Crisp and clean. Let’s customize it."}, {"start": 2714.0, "text": "In Xcode 27, you can make the toolbar your own."}, {"start": 2717.0, "text": "It's easy to rearrange things, so I can add what I need and remove what I don't."}, {"start": 2722.0, "text": "The activity view is now tucked neatly into the document title over here,"}, {"start": 2726.0, "text": "so there’s even more room for the things I want."}, {"start": 2729.0, "text": "The navigation buttons, canvas toggle, editor splits,"}, {"start": 2732.0, "text": "they’re all right up here on the toolbar."}, {"start": 2735.0, "text": "Now I’ll add a shortcut to quickly create a new coding assistant conversation"}, {"start": 2739.0, "text": "and that’ll be useful a little bit later."}, {"start": 2742.0, "text": "Next and super fun, themes."}, {"start": 2746.0, "text": "Color now flows throughout the entire app, not just the editor."}, {"start": 2750.0, "text": "You can personalize everything from the background to syntax colors"}, {"start": 2754.0, "text": "and dial in that perfect shade of purple for your keywords."}, {"start": 2757.0, "text": "And Xcode 27 comes with gorgeous new choices."}, {"start": 2761.0, "text": "Let me show you a few of my favorites."}, {"start": 2762.0, "text": "Emerald. That feels fresh."}, {"start": 2765.0, "text": "You can almost smell it."}, {"start": 2767.0, "text": "How about something with a little bit more energy?"}, {"start": 2770.0, "text": "Neon Noir. Electric. Love it."}, {"start": 2775.0, "text": "Light or dark? Every theme supports both."}, {"start": 2778.0, "text": "Here’s Coral Reef. I feel relaxed already."}, {"start": 2781.0, "text": "And when I’m working on multiple projects at the same time,"}, {"start": 2784.0, "text": "I can set a different theme for each."}, {"start": 2786.0, "text": "Makes it super easy to tell them apart at a glance."}, {"start": 2790.0, "text": "All right, let's get back to work."}, {"start": 2791.0, "text": "Next, Xcode Cloud, which gives you continuous integration and delivery"}, {"start": 2796.0, "text": "built right into Xcode."}, {"start": 2798.0, "text": "I’ll set up my Origami project to use it."}, {"start": 2801.0, "text": "I'll click get started, grant access to my repository, and that's it."}, {"start": 2806.0, "text": "I can kick off my first cloud build."}, {"start": 2808.0, "text": "No App Store Connect setup needed."}, {"start": 2811.0, "text": "And Xcode Cloud builds are up to twice as fast,"}, {"start": 2815.0, "text": "now supporting Apple Vision Pro and apps using Metal on Apple silicon."}, {"start": 2820.0, "text": "Next, Previews."}, {"start": 2822.0, "text": "They are the best way to iterate on UI and the easiest way to see"}, {"start": 2826.0, "text": "how your views look across variants, like accessibility sizes, orientations,"}, {"start": 2831.0, "text": "and localizations."}, {"start": 2833.0, "text": "And now you can see variations for any property."}, {"start": 2836.0, "text": "I’ll open this view here that shows a craft note."}, {"start": 2839.0, "text": "It renders differently based on the CraftState enum,"}, {"start": 2842.0, "text": "which has four different values."}, {"start": 2844.0, "text": "Now, I can pass that enum to the preview and just like that -"}, {"start": 2848.0, "text": "I get a grid showing all the states of my UI."}, {"start": 2851.0, "text": "All four in one glance."}, {"start": 2853.0, "text": "Next, another one I'm excited about."}, {"start": 2856.0, "text": "When testing your app, you use real hardware to evaluate performance,"}, {"start": 2860.0, "text": "use sensors, and test real-world conditions."}, {"start": 2863.0, "text": "And you use simulators to cover older OSes and devices that you don't have."}, {"start": 2869.0, "text": "Xcode 27 brings both together in the new Device Hub."}, {"start": 2874.0, "text": "It replaces Simulator and it does a whole lot more too."}, {"start": 2877.0, "text": "Let me show you."}, {"start": 2879.0, "text": "When I first run my app, the window looks like the Simulator I know."}, {"start": 2883.0, "text": "I can easily rotate, grab a screenshot and jump back to the home screen,"}, {"start": 2888.0, "text": "just like I’m used to."}, {"start": 2891.0, "text": "When I extend the view, I can now change device properties"}, {"start": 2894.0, "text": "and test how my app responds to different system settings."}, {"start": 2898.0, "text": "Like switching to dark mode, increasing the font size, and more."}, {"start": 2902.0, "text": "We rebuilt the experience from the ground up for the highest fidelity possible."}, {"start": 2907.0, "text": "So I can pinch to zoom, use two-finger scrolling, and like in Previews,"}, {"start": 2912.0, "text": "I can dynamically resize the simulator to see how my iOS app"}, {"start": 2916.0, "text": "handles different sizes."}, {"start": 2918.0, "text": "I can also manage and interact with physical devices from the same place,"}, {"start": 2922.0, "text": "like this iPhone here on my desk."}, {"start": 2924.0, "text": "I'll launch the Origami app right here from my Mac."}, {"start": 2927.0, "text": "And I can interact with it."}, {"start": 2929.0, "text": "All the convenience of the simulator with the fidelity of real hardware"}, {"start": 2934.0, "text": "in a single place."}, {"start": 2935.0, "text": "That is a quick look at the experience in Xcode 27."}, {"start": 2940.0, "text": "And beyond the experience, the biggest changes this year,"}, {"start": 2944.0, "text": "the ones that will truly accelerate you, are in intelligence."}, {"start": 2948.0, "text": "Kevin, over to you."}, {"start": 2950.0, "text": "What a great time to be a developer."}, {"start": 2952.0, "text": "Intelligence is transforming how you build apps."}, {"start": 2956.0, "text": "Agentic coding, together with Apple platforms, frameworks, and tools,"}, {"start": 2960.0, "text": "helps you bring ideas to life."}, {"start": 2963.0, "text": "Xcode 27 takes the next big step in agentic coding, leveraging the full power"}, {"start": 2968.0, "text": "of the best models and agents directly into Xcode."}, {"start": 2972.0, "text": "Agents are woven into every layer of the Xcode experience,"}, {"start": 2975.0, "text": "from the way you interact with them to a set of tools"}, {"start": 2978.0, "text": "that help you get the best results."}, {"start": 2980.0, "text": "Tools like understanding your project, searching documentation,"}, {"start": 2984.0, "text": "building, and testing."}, {"start": 2986.0, "text": "And Xcode 27 helps you even more with new tools"}, {"start": 2989.0, "text": "like rendering previews with variants, interacting with the simulator,"}, {"start": 2994.0, "text": "localizing your app, debugging, and more."}, {"start": 2997.0, "text": "And this goes beyond tools."}, {"start": 2999.0, "text": "When using agents in Xcode, every answer is grounded in Swift,"}, {"start": 3003.0, "text": "SwiftUI, in Apple frameworks."}, {"start": 3006.0, "text": "That’s why, when building for Apple platforms,"}, {"start": 3009.0, "text": "Xcode is the best place to code with agents."}, {"start": 3012.0, "text": "Let me show you what this looks like across every stage of app development."}, {"start": 3016.0, "text": "From starting with an idea to implementing and validating it, to improving it,"}, {"start": 3020.0, "text": "like adding new languages or fixing issues."}, {"start": 3023.0, "text": "First, I’m gonna add something fun to the Origami app."}, {"start": 3027.0, "text": "My daughter, she loves making origami with me."}, {"start": 3029.0, "text": "I want to surprise her with a feature"}, {"start": 3031.0, "text": "that makes up a little choose-your-own-adventure story"}, {"start": 3034.0, "text": "about the characters that we make together."}, {"start": 3036.0, "text": "I’ll start with a new conversation with the agent."}, {"start": 3038.0, "text": "I'll create one here from the toolbar."}, {"start": 3040.0, "text": "It opens right in the editor, just like any other file."}, {"start": 3044.0, "text": "Here’s what I want to build."}, {"start": 3046.0, "text": "In my Origami project,"}, {"start": 3047.0, "text": "I want a button that generates a choose-your-own-adventure story"}, {"start": 3051.0, "text": "for my daughter."}, {"start": 3052.0, "text": "That alone would get me good results, but I had something a little more specific"}, {"start": 3056.0, "text": "in mind, so I’ll add some more details."}, {"start": 3059.0, "text": "She’ll start by picking some options, like the setting and an item to use"}, {"start": 3063.0, "text": "in the story."}, {"start": 3064.0, "text": "The app will generate the first page, and then let her pick what comes next."}, {"start": 3069.0, "text": "I want to use the latest Foundation Models APIs"}, {"start": 3071.0, "text": "and present it with beautiful typography."}, {"start": 3074.0, "text": "When using a coding agent, the best results come"}, {"start": 3077.0, "text": "from collaborating on the implementation and design first,"}, {"start": 3080.0, "text": "before any code is written."}, {"start": 3081.0, "text": "So I'll add /plan to the prompt."}, {"start": 3084.0, "text": "And I’m gonna ask for a diagram while I’m at it."}, {"start": 3087.0, "text": "I find it easier to review the plan that way."}, {"start": 3090.0, "text": "Let’s get this started."}, {"start": 3091.0, "text": "The agent is exploring my project using Xcode tools to help it efficiently"}, {"start": 3095.0, "text": "understand my code base, its architecture and patterns, to find the best way to"}, {"start": 3100.0, "text": "build the feature, and it’s asking some clarifying questions."}, {"start": 3104.0, "text": "Do I want to persist it?"}, {"start": 3105.0, "text": "Yes. And how many options for the next part of the story?"}, {"start": 3109.0, "text": "Two to three is good."}, {"start": 3111.0, "text": "And the agent continues to create the plan."}, {"start": 3114.0, "text": "Let’s skip forward in time."}, {"start": 3116.0, "text": "My plan is now ready, and it shows right next to the conversation"}, {"start": 3119.0, "text": "in beautifully rendered markdown."}, {"start": 3121.0, "text": "It’s very easy to review, and I can also refine it."}, {"start": 3125.0, "text": "Here, the current implementation has a fixed set of settings and items to choose."}, {"start": 3129.0, "text": "I'd love if she could add her own."}, {"start": 3132.0, "text": "I’ll add that as a comment."}, {"start": 3134.0, "text": "And now the plan looks good."}, {"start": 3136.0, "text": "Let's kick it off."}, {"start": 3138.0, "text": "Now Xcode and the agent work together to implement the plan."}, {"start": 3141.0, "text": "Xcode shows everything that's changing, like code and previews."}, {"start": 3145.0, "text": "As it runs, I can refine the implementation."}, {"start": 3148.0, "text": "Like here, I'm gonna add a fun image filter to the story's hero image."}, {"start": 3153.0, "text": "It looks like Xcode is done building my feature."}, {"start": 3156.0, "text": "There's still a lot of code, and the previews look great."}, {"start": 3159.0, "text": "Let's just run it."}, {"start": 3161.0, "text": "I’ll open an Origami project, tap the new toolbar icon, and just like we asked,"}, {"start": 3167.0, "text": "page one offers an item and a setting."}, {"start": 3169.0, "text": "I’ll pick a forest and a wand,"}, {"start": 3172.0, "text": "and oh look, there’s the button if I wanted to add my own."}, {"start": 3175.0, "text": "And here's the first page of the story with that gorgeous hero image."}, {"start": 3180.0, "text": "My daughter's gonna love this."}, {"start": 3182.0, "text": "What was just an idea a couple minutes ago is now something I can run in my app."}, {"start": 3186.0, "text": "This is amazing!"}, {"start": 3187.0, "text": "Now, building a feature is more than writing code."}, {"start": 3190.0, "text": "It's also making sure it does what it's supposed to do."}, {"start": 3193.0, "text": "Xcode 27 can help you with that too, with new tools for agents to check their work."}, {"start": 3198.0, "text": "For example, agents can validate the logic of your app by running tests,"}, {"start": 3203.0, "text": "try ideas in isolation using playgrounds, like experimenting with APIs,"}, {"start": 3208.0, "text": "and check visual changes with Previews in light and dark mode,"}, {"start": 3212.0, "text": "different orientations, text sizes, or localizations."}, {"start": 3217.0, "text": "And now agents can interact with your app in the simulator."}, {"start": 3221.0, "text": "Let me show you."}, {"start": 3222.0, "text": "I want to test different combinations of settings, items, even customized ones."}, {"start": 3228.0, "text": "Xcode launches Origami and Device Hub and starts testing those for me."}, {"start": 3232.0, "text": "The agent can tap, swipe, and type."}, {"start": 3236.0, "text": "When it's done, I get a summary of the tests, and I can see all the screenshots"}, {"start": 3241.0, "text": "it created along the way."}, {"start": 3243.0, "text": "And just like that, the Origami app has a new story feature, designed, built,"}, {"start": 3249.0, "text": "and tested end-to-end."}, {"start": 3251.0, "text": "Next, let's see how we can use agentic coding to improve our app."}, {"start": 3255.0, "text": "Agents in Xcode can help with all kinds of engineering tasks, like adopting new APIs,"}, {"start": 3261.0, "text": "making your app more accessible, and more."}, {"start": 3264.0, "text": "Let's localize our Origami app."}, {"start": 3266.0, "text": "I’ll start with French."}, {"start": 3268.0, "text": "Xcode automatically adds a new language to the strings catalog,"}, {"start": 3272.0, "text": "then works with the agents to translate strings"}, {"start": 3275.0, "text": "across the entire project."}, {"start": 3277.0, "text": "This is more than a word-for-word translation."}, {"start": 3280.0, "text": "Xcode looks at each string in its context, the surrounding code, UI, the action,"}, {"start": 3285.0, "text": "to find the best translation."}, {"start": 3287.0, "text": "And when it's done, I can see all the translations here in the String Catalog."}, {"start": 3292.0, "text": "Let's build and run."}, {"start": 3294.0, "text": "My app is now localized!"}, {"start": 3296.0, "text": "Fantastique!"}, {"start": 3298.0, "text": "Building a great app also means responding to the feedback and data from your users."}, {"start": 3303.0, "text": "The Organizer already gives you insights into how your app is doing"}, {"start": 3307.0, "text": "in the real world - crashes, hangs, performance metrics,"}, {"start": 3311.0, "text": "anonymized and aggregated."}, {"start": 3313.0, "text": "Now, you can use agents to help you find issues that matter most, and fix them."}, {"start": 3318.0, "text": "I'll ask Xcode to pull up the top crashes from the latest release."}, {"start": 3322.0, "text": "I get a list of crashes ranked by how often they happen."}, {"start": 3326.0, "text": "Oh, that first one is from an update I pushed last week."}, {"start": 3329.0, "text": "Let's fix it."}, {"start": 3333.0, "text": "Xcode looks at the symbolicated crash log, figures out where in my project"}, {"start": 3337.0, "text": "this happens, identifies the issue, reproduces the crash, makes the fix,"}, {"start": 3344.0, "text": "and then validates it."}, {"start": 3347.0, "text": "And just like that, our issue is fixed."}, {"start": 3350.0, "text": "That's agents at work with Xcode across every stage of your development, planning,"}, {"start": 3355.0, "text": "building, and improving."}, {"start": 3357.0, "text": "You'll be amazed when you see Xcode and agents bring your ideas to life."}, {"start": 3361.0, "text": "Finally, let's talk about what makes all of this possible."}, {"start": 3365.0, "text": "Xcode 27 ships with the expertise of Apple’s engineers and designers"}, {"start": 3369.0, "text": "built right in as a corpus of skills, documentation, and MCP tools."}, {"start": 3374.0, "text": "Think of them as specialists."}, {"start": 3376.0, "text": "A SwiftUI specialist that knows how to structure your view and data flow."}, {"start": 3381.0, "text": "An accessibility specialist that knows what makes an interface work for everyone."}, {"start": 3385.0, "text": "Specialists for universal sizing, testing, and performance."}, {"start": 3390.0, "text": "In fact, so much of what we’ve seen to this point"}, {"start": 3392.0, "text": "is powered by one of these specialists."}, {"start": 3394.0, "text": "And you can bring your own!"}, {"start": 3397.0, "text": "Xcode integrates all of them in the same way."}, {"start": 3400.0, "text": "Plugins."}, {"start": 3401.0, "text": "It's a format used by many agents and widely adopted by the community."}, {"start": 3405.0, "text": "It's amazing to see how many of these you have already been building and sharing."}, {"start": 3410.0, "text": "A plugin can contain skills, just markdown files that teach the agent new tasks."}, {"start": 3415.0, "text": "It can contain tools using the Model Context Protocol."}, {"start": 3419.0, "text": "And we’ve added one new capability to plugins."}, {"start": 3423.0, "text": "With the Agent Client Protocol, a plugin can bring an agent of your choice."}, {"start": 3427.0, "text": "Installing one is easy."}, {"start": 3429.0, "text": "You can use the command line or paste a git URL right into Xcode."}, {"start": 3433.0, "text": "And partners like Figma and GitHub make it even easier to set up with just one click."}, {"start": 3439.0, "text": "And then I can put it all together."}, {"start": 3441.0, "text": "I can tell Xcode to implement a Figma design in SwiftUI, refine it for different"}, {"start": 3446.0, "text": "variants, make it resizable using a skill, and post a PR to GitHub."}, {"start": 3451.0, "text": "How cool is that?"}, {"start": 3453.0, "text": "That's Agentic Coding in Xcode 27."}, {"start": 3456.0, "text": "From an idea to an app, at every step."}, {"start": 3460.0, "text": "Built for how you create, refine, and ship, and reach your users"}, {"start": 3464.0, "text": "wherever they are."}, {"start": 3465.0, "text": "We can't wait to see what great things you make next!"}, {"start": 3469.0, "text": "Back to you, Josh."}, {"start": 3472.0, "text": "It's a huge year for Xcode and for many of our other developer tools as well."}, {"start": 3477.0, "text": "Like the all-new Reality Composer Pro 3, which has been completely rebuilt for"}, {"start": 3483.0, "text": "crafting production-ready 3D experiences using RealityKit."}, {"start": 3488.0, "text": "It brings support for character animations, more realistic lighting,"}, {"start": 3492.0, "text": "and live previews that let you see the results of your edits"}, {"start": 3495.0, "text": "as you make them using Mac Virtual Display."}, {"start": 3499.0, "text": "And there’s even more for game developers in this year’s releases,"}, {"start": 3502.0, "text": "including a major update to Game Porting Toolkit,"}, {"start": 3505.0, "text": "which dramatically cuts the time it takes to bring games"}, {"start": 3508.0, "text": "to Apple platforms by adding AI skills for coding agents."}, {"start": 3513.0, "text": "And new Metal command line tools give agents direct control"}, {"start": 3517.0, "text": "during development and debugging, bringing best practices"}, {"start": 3520.0, "text": "for game development on Apple platforms to every step of your porting journey."}, {"start": 3526.0, "text": "So that's developer productivity."}, {"start": 3528.0, "text": "Across the 2027 releases, there are so many new capabilities to build on,"}, {"start": 3534.0, "text": "like the App Intents framework, which lets you connect your app"}, {"start": 3537.0, "text": "to Apple Intelligence, and the Foundation Models framework"}, {"start": 3540.0, "text": "and Core AI, which enable you to bring"}, {"start": 3543.0, "text": "powerful generative intelligence features directly into your apps."}, {"start": 3548.0, "text": "There are platform improvements across design, Swift, and SwiftUI"}, {"start": 3553.0, "text": "that make your apps faster, more flexible, and easier to build."}, {"start": 3557.0, "text": "And Xcode has even more expansive support for agentic coding."}, {"start": 3563.0, "text": "and we’ve only just scratched the surface."}, {"start": 3565.0, "text": "There are over 100 sessions to dive deep into everything we've covered today,"}, {"start": 3571.0, "text": "including Apple Intelligence, Xcode 27, Design, and more."}, {"start": 3577.0, "text": "All these sessions are available on the Apple Developer app, the website, YouTube,"}, {"start": 3582.0, "text": "and new this year on Bilibili."}, {"start": 3584.0, "text": "And there's so much more happening online throughout the week."}, {"start": 3589.0, "text": "Sign up for Group Labs, online panels, and Q & A sessions"}, {"start": 3593.0, "text": "with Apple engineers and designers."}, {"start": 3596.0, "text": "And connect with us on the Apple Developer Forums"}, {"start": 3598.0, "text": "to ask questions, and follow the conversation"}, {"start": 3601.0, "text": "about the latest tools and technologies."}, {"start": 3603.0, "text": "And the opportunities to connect extend well beyond this week."}, {"start": 3608.0, "text": "You can Meet with Apple around the world and online in hands-on workshops, labs,"}, {"start": 3614.0, "text": "and events to learn and connect as a community throughout the year."}, {"start": 3620.0, "text": "We love when we can meet you in person."}, {"start": 3623.0, "text": "And there are many opportunities to do that in our Developer Centers,"}, {"start": 3627.0, "text": "located in Cupertino, Shanghai, Singapore, and Bengaluru."}, {"start": 3632.0, "text": "And we’re excited to announce the opening of our fifth this fall in Berlin,"}, {"start": 3638.0, "text": "home to one of Europe’s most vibrant developer and designer communities."}, {"start": 3642.0, "text": "We can’t wait to see you there or in one of our events online."}, {"start": 3647.0, "text": "Whether this is your first WWDC or your 25th, thank you."}, {"start": 3652.0, "text": "Your work inspires and drives us."}, {"start": 3656.0, "text": "We use the apps and play the games that you all build."}, {"start": 3660.0, "text": "So, our greatest hope is that everything we talked about today"}, {"start": 3664.0, "text": "will enable your next great idea to come to life."}, {"start": 3668.0, "text": "We can't wait to see what you do next."}, {"start": 3671.0, "text": "Enjoy WWDC."}]}