Skip to main content

create-private-framework

Claude Command to Create Private SDK XCFramework

الانتقال إلى التثبيت

معلومات المصدر

المستودع
OpenSwiftUIProject/DarwinPrivateFrameworks
آخر نشاط في المصدر
١٠ فبراير ٢٠٢٦ في ١٨:٢١
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٣٨
التفرعات
٥

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
create_private_framework
description
Claude Command to Create Private SDK XCFramework
To create a new private SDK xcframework like BacklightServices, follow these steps: ## Command Summary ```bash # 1. Create directory structure mkdir -p <FrameworkName>/{2024/{Sources,tbds},latest} cd <FrameworkName> # 2. Create tbd subdirectories for each platform mkdir -p 2024/tbds/{ios-arm64-arm64e,ios-arm64-x86_64-simulator,xros-arm64-x86_64-simulator} # 3. Extract tbd files from simulators # For iOS Simulator cp -r "/Library/Developer/CoreSimulator/Volumes/iOS_22F77/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.5.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/<FrameworkName>.framework" /tmp/<FrameworkName>_ios_simulator.framework cd /tmp && xcrun tapi stubify ./<FrameworkName>_ios_simulator.framework cp /tmp/<FrameworkName>_ios_simulator.framework/<FrameworkName>.tbd <path>/2024/tbds/ios-arm64-x86_64-simulator/ # For visionOS Simulator cp -r "/Library/Developer/CoreSimulator/Volumes/xrOS_22O473/Library/Developer/CoreSimulator/Profiles/Runtimes/xrOS 2.5.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/<FrameworkName>.framework" /tmp/<FrameworkName>_xros_simulator.framework cd /tmp && xcrun tapi stubify ./<FrameworkName>_xros_simulator.framework cp /tmp/<FrameworkName>_xros_simulator.framework/<FrameworkName>.tbd <path>/2024/tbds/xros-arm64-x86_64-simulator/ # 4. Get iOS device tbd from GitHub curl -s "https://raw.githubusercontent.com/xybp888/iOS-SDKs/master/iPhoneOS18.5.sdk/System/Library/PrivateFrameworks/<FrameworkName>.framework/<FrameworkName>.tbd" > 2024/tbds/ios-arm64-arm64e/<FrameworkName>.tbd # 5. Set up framework-specific files # For Swift frameworks: mkdir -p 2024/Sources/Modules/<FrameworkName>.swiftmodule # Create template.swiftinterface with Swift module declarations # For Objective-C frameworks: mkdir -p 2024/Sources/{Headers,Modules} # Extract headers using ipsw class-dump (creates individual header files in a subdirectory) ipsw class-dump "/Library/Developer/CoreSimulator/Volumes/iOS_22F77/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 18.5.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/<FrameworkName>.framework/<FrameworkName>" --headers --arch arm64 -o 2024/Sources/Headers # This creates a <FrameworkName>/ subdirectory in Headers/ with all the header files # Note: Headers are universal and can be used for all platforms (iOS, iOS Simulator, visionOS Simulator) # Create module.modulemap in Modules/ # 6. Create Info.plist for xcframework # 7. Create update.sh script # 8. Run update.sh to generate xcframework ./update.sh # 9. Create symlink to latest version ln -s ./2024 latest ``` ## Key Files Created 1. **Info.plist** - Defines the xcframework structure with library identifiers for each platform 2. **update.sh** - Script to regenerate the xcframework from tbd files 3. **README.md** - Documentation for the framework 4. **tbds/** - Directory containing .tbd stub files for each platform: - ios-arm64-arm64e (iPhone device) - ios-arm64-x86_64-simulator (iPhone Simulator) - xros-arm64-x86_64-simulator (visionOS Simulator) 5. **For Swift frameworks:** - `Sources/Modules/<FrameworkName>.swiftmodule/template.swiftinterface` - Template for Swift interface generation 6. **For Objective-C frameworks:** - `Sources/Headers/` - Directory containing framework header files - `Sources/Modules/module.modulemap` - Module map defining the framework's module structure ## Platform Support The framework supports: - iOS Device (arm64, arm64e) - iOS Simulator (arm64, x86_64) - visionOS Simulator (arm64, x86_64) ## Notes - The `xcrun tapi stubify` command is used to generate .tbd files from framework binaries - The 2024 version corresponds to iOS 18.5, macOS 15.5, and visionOS 2.5 - Always create a symlink named `latest` pointing to the current version directory - **Swift frameworks** require a `template.swiftinterface` file for proper module interface generation (see AttributeGraph for example) - **Objective-C frameworks** require a `module.modulemap` and header files in the Sources directory - The `update.sh` script should handle copying these files into the generated xcframework structure --- Create framework: $ARGUMENTS
عرض على GitHub