First-time setup for Smart Build. Run this when user first uses the plugin or wants to configure build settings. Ask user to choose between Xcode sync mode or custom settings.
Configures Smart Build with Xcode sync or custom scheme/destination settings.
/plugin marketplace add leepokai/swiftui-smart-build/plugin install leepokai-swiftui-smart-build@leepokai/swiftui-smart-buildThis skill inherits all available tools. When active, it can use any tool Claude has access to.
First-time configuration for the Smart Build plugin.
.smart-build.json exists in the project rootBefore doing anything, verify user is in a valid Xcode project directory:
# Check for Xcode project
ls *.xcodeproj 2>/dev/null || ls *.xcworkspace 2>/dev/null
If no project found:
STOP and warn the user: "⚠️ No Xcode project found in current directory. Please run Claude from your project folder:
cd /path/to/YourApp claude
Then run /swiftui-smart-build@leepokai:setup again."
Do NOT create .smart-build.json
If project found: Continue with setup.
# Check if config exists
cat .smart-build.json 2>/dev/null
If exists, tell user current settings and ask if they want to change.
Use AskUserQuestion to ask:
Question: "How do you want Smart Build to determine build settings?"
Options:
${CLAUDE_PLUGIN_ROOT}/scripts/get-xcode-settings.sh
{
"mode": "xcode",
"projectPath": null
}
xcodebuild -project *.xcodeproj -list -json 2>/dev/null | jq -r '.project.schemes[]'
# or for workspace
xcodebuild -workspace *.xcworkspace -list -json 2>/dev/null | jq -r '.workspace.schemes[]'
Ask user to pick a scheme
List available destinations:
# Booted simulators
xcrun simctl list devices booted -j | jq -r '.devices[][] | "\(.name) (Simulator) - \(.udid)"'
# Available simulators
xcrun simctl list devices available -j | jq -r '.devices[][] | select(.name | contains("iPhone")) | "\(.name) (Simulator) - \(.udid)"' | head -10
# Connected devices
xcrun devicectl list devices -j 2>/dev/null | jq -r '.result.devices[] | "\(.deviceProperties.name) (Device) - \(.identifier)"'
Ask user to pick a destination
Create config file:
{
"mode": "custom",
"scheme": "UserSelectedScheme",
"destination": {
"type": "simulator",
"udid": "12345678-ABCD-1234-ABCD-123456789ABC",
"name": "iPhone 16 Pro",
"platform": "iphonesimulator"
}
}
Write the config to .smart-build.json in the project root.
Tell user:
/swiftui-smart-build:settings anytime to change this"User: /swiftui-smart-build:setup
Claude: I'll help you set up Smart Build for this project.
How do you want to determine build settings?
[Xcode Sync] - Automatically use Xcode's current scheme and destination
[Custom] - Specify a fixed scheme and destination
User: Xcode Sync
Claude: Reading your Xcode settings...
Current Xcode configuration:
- Scheme: SmartBuildTest
- Destination: iPhone 16 Pro (Simulator)
I've saved this preference. Smart Build will now automatically sync with
whatever you have selected in Xcode.
Setup complete! When you build, it will use your Xcode settings.
Run /swiftui-smart-build:settings anytime to change this.
Activates when the user asks about Agent Skills, wants to find reusable AI capabilities, needs to install skills, or mentions skills for Claude. Use for discovering, retrieving, and installing skills.
Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use for discovering, retrieving, and improving prompts.
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.