diff --git a/.github/copilot-instructions.md b/.github/copilot-instructions.md index 7910c166cc..7c5ff887f6 100644 --- a/.github/copilot-instructions.md +++ b/.github/copilot-instructions.md @@ -26,7 +26,7 @@ bundle exec fastlane test 1. **Dependency Injection**: This project uses the "World" pattern. A global `Current` variable (`AppEnvironment`) holds all dependencies. Never assign to `Current.*` outside test code. 2. **Localization**: Add strings to `Sources/App/Resources/en.lproj/Localizable.strings`. SwiftGen generates type-safe `L10n` accessors on build. 3. **SF Symbols**: Use `SFSafeSymbols` (`Image(systemSymbol: .house)`) not string-based APIs. -4. **CocoaPods only**: No Swift Package Manager. Dependencies via `Podfile`. +4. **CocoaPods and SPM**: Dependencies are managed via the `Podfile` (CocoaPods) and Xcode's Swift Package Manager integration for select packages. 5. **Workspace**: Always use `HomeAssistant.xcworkspace`. ### Architecture diff --git a/AGENTS.md b/AGENTS.md index 5dc1950adb..02bdb1b125 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -8,7 +8,7 @@ Home Assistant for Apple Platforms is a native Swift companion app for [Home Ass - **Language**: Swift 5.8+ - **Platforms**: iOS, watchOS, macOS (Catalyst), CarPlay -- **Build System**: Xcode 26.2+, CocoaPods +- **Build System**: Xcode 26.2+, CocoaPods, Swift Package Manager - **Workspace**: Always open `HomeAssistant.xcworkspace` (not the `.xcodeproj`) ## Getting Started @@ -20,7 +20,7 @@ bundle install bundle exec pod install --repo-update ``` -> CocoaPods manages all third-party dependencies. Never add Swift Package Manager dependencies. +> CocoaPods and Swift Package Manager (SPM) manage third-party dependencies. CocoaPods is used for most dependencies, while SPM is used for select packages (e.g., swift-snapshot-testing, WebRTC, ZIPFoundation, firebase-ios-sdk). ### Code Signing (for device builds)