Localization not working for App Intents defined inside Swift Package and used in Widget Extension

Hi there,

I’m having trouble with localization for App Intents used in a configurable widget when the intents are defined inside a Swift Package.

The intents appear correctly in the widget configuration UI and function as expected, but the localized strings are not displayed.
Instead, the widget shows the localization keys themselves.

Setup

  • Xcode: 26.1
  • iOS: 26
  • The App Intents are used for a configurable widget
  • Intent is located in a Swift Package
  • The Widget Extension depends on the package
  • AppIntentsPackage setup:
    // In the package
    public struct MySharedIntentsPackage: AppIntentsPackage {}
    
    // In the widget extension
    import AppIntents
    import SharedAppIntents
    
    struct WidgetIntentsPackage: AppIntentsPackage {
        static var includedPackages: [any AppIntentsPackage.Type] {
            [MySharedIntentsPackage.self]
        }
    }
    

What I’ve tried

I tested several configurations separately to see which setup allows localization to work:

  1. Localizing inside the Swift Package

    • Placed a Localizable.xcstrings file inside the Swift Package.
    • Specified .module for the bundle parameter in LocalizedStringResource initializers.

    → The widget still displayed the localization keys.

  2. Localizing inside the Widget Extension

    • Placed a Localizable.xcstrings file inside the Widget Extension target instead of the package.

    → The widget continued to show the localization keys.

  3. Allowing mixed localizations

    • Added CFBundleAllowMixedLocalizations = YES to the Widget Extension’s Info.plist.

    → No change; the widget still showed the keys.

Problem

In the WWDC 2025 session “Get to Know App Intents”, it was announced that App Intents would officially support Swift Packages.
However, despite following that guidance, here we have a situation where the localizations do not work and only the keys appear in a configurable widget’s configuration UI.
When I move the same App Intent code directly into the Widget Extension target, localization works as expected, but not when the intent remains inside the Swift Package.

Question

Is localization for App Intents defined in Swift Packages officially supported for configurable widgets?
If yes:

  • Which bundle does App Intents use to resolve localized strings?
  • Should the .xcstrings file be placed in the package or in the host extension’s bundle?
  • Or is this a current limitation or known issue?

Any clarification or workaround would be greatly appreciated.
Thank you.

Localization not working for App Intents defined inside Swift Package and used in Widget Extension
 
 
Q