---
name: create
user-invocable: true
description: Scaffolds a new project by routing to the right companion plugin's create skill.
when_to_use: Use when user says "create a project", "new flutter app", "start a dart package", "scaffold", or asks to set up a new codebase.
argument-hint: what to create (e.g., "flutter app", "dart package")
effort: low
allowed-tools: Read Glob Skill
compatibility: Designed for Claude Code (or similar products with agent support)
---
# Create a new project
Route project creation to the right companion plugin. Wingspan does not scaffold projects itself — it discovers companion plugins from recommendation files and delegates to the matching plugin's create skill.
## Project description
$ARGUMENTS
**If the description above is empty:**
1. First, scan recommendation files (Step 1 below) to discover available project types.
2. Then use **AskUserQuestion tool**:
- **Question:** "What kind of project would you like to create?"
- **Options:** Build the option list from the discovered companion plugins' descriptions, plus "Other" as the last option.
DO NOT proceed until you have a project description.
## Step 1: Scan recommendation files
Use **Glob** to find all `*.json` files in `hooks/recommendations/` (relative to the Wingspan plugin root). Then **Read** each file.
Each recommendation file has this structure:
```json
{
"plugin": "plugin-name",
"description": "What the plugin provides.",
"marketplace": "OrgName/repo-name"
}
```
## Step 2: Match the user's request to a plugin
Compare the user's project description against each recommendation's `plugin` name and `description` (case-insensitive). Pick the plugin whose description best matches the requested technology.
- **No match:** Inform the user no companion plugin is registered for this project type. Stop.
- **Multiple matches:** Pick the most specific match for the requested project type.
- **Match found:** Proceed to Step 3.
## Step 3: Verify the plugin is installed
Check the available skills listed in the system-reminder in your conversation context for any skill prefixed with the matched plugin name (`:`).
If **no skills from that plugin are listed**, the plugin is not installed. Use **AskUserQuestion tool**:
- **Question:** "The companion plugin '``' is needed but not installed. Would you like to install it?"
- **Options:**
1. "Yes, install it" *(default)*
2. "No, stop"
If the user chooses to install, output the following commands and **stop**:
```bash
/plugin marketplace add
/plugin install
```
Tell the user to run these commands, then re-invoke `/create` with the same project description. **Do not proceed to Step 4.**
## Step 4: Find and invoke the plugin's project-creation skill
The available skills are listed in the system-reminder in your conversation context. Look for skills prefixed with the matched plugin name (`:`). Among those, find the skill whose name or description best indicates project creation (look for terms like "create", "scaffold", "new project", "generate", "init").
Invoke it using the **Skill tool** with its fully qualified name (e.g., `my-plugin:scaffold-project`), passing the user's full project description as arguments.
- **No project-creation skill found for the plugin:** Inform the user the companion plugin is registered but does not provide a project-creation skill. Stop.
- **If the skill invocation fails:** Surface the error to the user and suggest verifying the companion plugin is properly installed.
## Important
- This skill is a thin router. No technology-specific logic.
- Every user-facing question must use the **AskUserQuestion tool**.