Source: ai-research/claude-blog-claude-for-foundation-models.md — Anthropic first-party blog post, claude.com/blog/claude-for-foundation-models (“Building intelligent apps for Apple platforms with Claude in the Foundation Models framework”). No author byline or on-page date; this wiki’s own Week 25 Release Digest already dates the underlying announcement to 2026-06-10 via a separate @ClaudeDevs source, folded into that week’s roundup as a single bullet — this article gives the mechanics a dedicated treatment.

Anthropic shipped a Swift package that plugs Claude into Apple’s Foundation Models framework, so Apple developers can hand off from Apple’s own on-device models to Claude mid-request whenever a task needs multi-step reasoning, code generation, live web search, or code-execution-backed data analysis. It’s a hybrid-model pattern by design: fast, private, local inference for the simple steps, cloud-scale Claude for the steps that need it, streamed back into the same SwiftUI view so the user experiences one continuous app rather than a visible model switch.

Key Takeaways

  • Hybrid, not a replacement. Apple’s on-device models keep doing what they’re already good at — summarization, extraction, quick structured generation. Claude enters only when a request needs multi-step reasoning, code generation, current information via web search, or code-execution-backed data analysis.
  • Typed handoff via @Generable. Apple’s framework returns typed Swift values through guided generation (the post claims as few as three lines of code). That means a developer’s Claude API call receives clean, typed input instead of raw user text needing separate parsing.
  • Two illustrative apps. A journaling app generates daily prompts on-device, then asks Claude to find recurring threads across months of entries — a span of context a single on-device pass doesn’t reason over well. A study app defines a term locally, then hands off to Claude for a deeper “why does this matter for everything else we’ve covered?” follow-up.
  • Broad, simultaneous platform reach. iOS 27, iPadOS 27, macOS 27, visionOS 27, and watchOS 27 all at once — effectively Apple’s entire current OS lineup.
  • Low integration lift. Add the package, sign in with an Anthropic API key; the package itself handles streaming, tool calls, and structured responses back into the view.
  • A genuine wiki gap, but not from zero. The announcement already had a one-line digest mention in this wiki (see Source line above); this article is the first dedicated write-up of the actual mechanics, examples, and platform matrix.

The hybrid pattern in practice

Apple’s Foundation Models framework already powers on-device features on its own. Adding Claude as a downstream option extends existing patterns rather than replacing them — the on-device model still owns the fast, private, low-latency step; Claude is reached for specifically when the request needs deeper reasoning, code generation, web search, or data analysis via code execution. The post frames the payoff as continuity: “one experience for the user, backed by the right model for each step.”

Typed handoff via @Generable

The detail that makes this more than a generic API wrapper: because Apple’s framework returns typed Swift values from @Generable annotations, a developer arrives at the Claude API call with structured input already in hand, rather than a blob of raw text that still needs parsing and validation before it’s usable. Claude’s response streams back into the same SwiftUI view, with the package handling streaming, tool calls, and structured responses on the way back.

Platform and setup

PlatformsiOS 27, iPadOS 27, macOS 27, visionOS 27, watchOS 27
SetupAdd the Swift package to the project; sign in with an Anthropic API key
AvailabilityStated as “available tomorrow” relative to the post’s publish date — consistent with the 2026-06-10 date this wiki’s Week 25 digest already assigns the underlying announcement

Try It

  • If you already build Apple-platform apps against Foundation Models, find one on-device feature that hits a reasoning or context-length ceiling (a “summarize this document” that should really be a “find the pattern across all my documents”) and prototype a Claude handoff for just that step.
  • Shape the on-device output with @Generable before it reaches Claude, rather than passing raw text through — the typed-value handoff is the integration’s main ergonomic win over a plain SDK call.
  • If you’re deciding where Claude fits across a broader product stack (mobile client-side vs. server-side vs. an agentic CLI), compare this surface against Managed Agents and Claude Tag — three very different “embed Claude beyond the chat window” shapes from the same period.

Open Questions

  • Pricing and rate-limit specifics for this API-key-based mobile-client pattern aren’t stated in the post — worth checking Anthropic’s platform docs directly before shipping a production app.
  • No detail on latency characteristics of the on-device-to-cloud handoff, or on offline/degraded behavior when the on-device step succeeds but network is unavailable for the Claude step.
  • Whether Anthropic plans an equivalent first-party integration with Android’s on-device model frameworks is not addressed in this post.
  • Which Claude model version backs the integration by default isn’t stated — not assumed here given the timing coincides with the Fable 5 launch window but the post doesn’t name a model.
  • Claude Code Week 25 Release Digest — the prior one-line mention of this same announcement, folded into a broader weekly roundup; this article gives it dedicated treatment.
  • Claude Tag — a different-shaped first-party push to embed Claude into a new surface (a shared Slack workspace) rather than a mobile on-device/cloud hybrid.
  • Claude Managed Agents — another “Claude beyond the chat window” surface: hosted/unattended agents rather than this integration’s request-time on-device-to-cloud handoff.
  • Hermex — Native SwiftUI iPhone Client for Hermes Agent — the wiki’s only other native-Swift/iOS article; useful contrast between a community-built agent client and this first-party SDK-level integration.