SKILL.md
Clone an iPlug2 Example
Use this skill when the user wants to create a new plugin project from an iPlug2 example.
Workflow
- Ask for project details:
- Plugin name (required): No spaces or special characters - Manufacturer name (required): Default to "AcmeInc" if not provided - Base template: Which example to clone from
- Available templates:
| Template | Description |
|---|---|
| IPlugEffect | Basic audio effect (volume control) - recommended for effects |
| IPlugInstrument | MPE-capable polyphonic synth - recommended for instruments |
| IPlugControls | Widget demonstration |
| IPlugWebUI | HTML/CSS/JS UI via WebView |
| IPlugSwiftUI | SwiftUI for macOS/iOS |
| IPlugSvelteUI | Svelte-based UI |
- Run the duplicate script:
``bash cd Examples ./duplicate.py [SourceExample] [NewPluginName] [ManufacturerName] ``
- Customize config.h (offer to user):
- PLUGUNIQUEID - Auto-generated 4-char ID (verify it's unique) - PLUGMFRID - 4-char manufacturer ID - Copyright, email, URLs - prompt but allow skipping
- Warn about sensitive settings:
- Don't change BUNDLE_NAME without updating plist files - Keep config.h free of #include statements
Example
cd Examples
./duplicate.py IPlugEffect MyGainPlugin MyCompany
Creates Examples/MyGainPlugin/ with all project files renamed and configured.