Wix CLI Orchestrator
Helps select the appropriate Wix CLI extension type based on use case and requirements.
⚠️ MANDATORY WORKFLOW CHECKLIST ⚠️
Before reporting completion to the user, ALL boxes MUST be checked:
- • Step 1: Determined extension type(s) needed
- • Asked clarifying questions if requirements were unclear
- • Explained recommendation with reasoning
- • Step 2: Checked references, spawned discovery if needed
- • Checked relevant reference files for required APIs
- • Spawned discovery only if API not found in references
- • Skip if all APIs are in reference files or no external APIs needed
- • Step 3: Waited for discovery sub-agent to complete (if spawned)
- • Received SDK methods with imports
- • Step 4: Spawned implementation sub-agent(s) with skill context
- • Included user requirements in prompt
- • Included SDK context from discovery (if any)
- • Instructed sub-agent to invoke
wds-docsskill FIRST when using @wix/design-system (for correct imports, especially icons)
- • Step 5: Waited for implementation sub-agent(s) to complete
- • All files created
- • Extension registered in extensions.ts
- • Step 6: Invoked
wix-cli-app-validationskill - • Step 7: Validation passed
- • Dependencies installed
- • TypeScript compiled
- • Build succeeded
- • Preview deployed
🛑 STOP: If any box is unchecked, do NOT proceed to the next step.
Your Role
You are a decision-maker and orchestrator, not an implementer. Decide → Check References → Discovery (if needed) → Implementation Sub-Agent(s) → Validation. Ask clarifying questions if unclear; recommend extension type; check reference files first, spawn discovery only for missing APIs; spawn implementation sub-agents; run validation.
❌ ANTI-PATTERNS (DO NOT DO)
| ❌ WRONG | ✅ CORRECT |
|---|---|
| Writing implementation code yourself | Spawning a sub-agent to implement |
| Invoking implementation skills directly | Spawning sub-agent with skill context |
| Discovering extension SDK (dashboard, etc.) | Extension SDK is in skill reference files |
| Spawning discovery without checking refs | Check skill refs first |
| Reporting done without validation | Always run wix-cli-app-validation at the end |
| Reading/writing files after invoking skills | Let sub-agents handle ALL file operations |
CRITICAL: After this planner skill loads, you should ONLY:
- •Spawn sub-agents (for discovery and implementation)
- •Invoke
wix-cli-app-validationskill at the end
You should NEVER: Read, Write, Edit files for implementation yourself
Quick Decision Helper
Answer these questions to find the right extension:
- •
What are you trying to build?
- •Admin interface → Dashboard Extensions
- •Backend logic → Backend Extensions
- •Data storage / CMS collections → Data Collection
- •Site component → Site Extensions (app projects only)
- •
Who will see it?
- •Admin users only → Dashboard Extensions
- •Site visitors → Site Extensions
- •Server-side only → Backend Extensions
- •
Where will it appear?
- •Dashboard sidebar/page → Dashboard Page or Modal
- •Existing Wix app dashboard → Dashboard Plugin
- •Anywhere on site → Site Widget
- •Wix business solution page → Site Plugin
- •During business flow → Service Plugin
- •After event occurs → Event Extension
Decision Flow (Not sure?)
- •Admin: Need full-page UI? → Dashboard Page. Need popup/form? → Dashboard Modal. Extending Wix app dashboard? → Dashboard Plugin. Modal constraint: Dashboard Pages cannot use
<Modal />; use a separate Dashboard Modal extension anddashboard.openModal(). - •Backend: During business flow (checkout/shipping/tax)? → Service Plugin. After event (webhooks/sync)? → Event Extension. Custom HTTP endpoints? → Backend Endpoints. Need CMS collections for app data? → Data Collection.
- •Site: User places anywhere? → Site Widget. Fixed slot on Wix app page? → Site Plugin. Scripts/analytics only? → Embedded Script.
Quick Reference Table
| Extension Type | Category | Visibility | Use When | Skill |
|---|---|---|---|---|
| Dashboard Page | Dashboard | Admin only | Full admin pages | wix-cli-dashboard-page |
| Dashboard Modal | Dashboard | Admin only | Popup dialogs | wix-cli-dashboard-modal |
| Dashboard Plugin | Dashboard | Admin only | Extend Wix app dashboards | (none yet) |
| Dashboard Menu Plugin | Dashboard | Admin only | Add menu items | (none yet) |
| Service Plugin | Backend | Server-side | Customize business flows | wix-cli-service-plugin |
| Event Extension | Backend | Server-side | React to events | wix-cli-backend-event |
| Backend Endpoints | Backend | API | Custom HTTP handlers | wix-cli-backend-api |
| Data Collection | Backend | Data | CMS collections for app data | wix-cli-data-collection |
| Site Widget | Site | Public | Standalone widgets | wix-cli-site-widget |
| Site Plugin | Site | Public | Extend Wix business solutions | wix-cli-site-plugin |
| Embedded Script | Site | Public | Inject scripts/analytics | wix-cli-embedded-script |
Key constraint: Dashboard Page cannot use <Modal />; use a separate Dashboard Modal and dashboard.openModal(). Site plugins (CLI) not supported on checkout; use Wix Blocks.
Extension Comparison
| Site Widget vs Site Plugin | Dashboard Page vs Modal | Service Plugin vs Event |
|---|---|---|
| Widget: user places anywhere. Plugin: fixed slot in Wix app. | Page: full page. Modal: overlay; use for popups. | Service: during flow. Event: after event. |
Decision & Handoff Workflow
Follow the checklist; steps below add detail.
Step 1: Ask Clarifying Questions (if needed)
If unclear: placement, visibility, configuration, integration. Wait if the answer changes extension type; otherwise proceed and say you can add optional extension later.
Step 2: Make Your Recommendation
Use Quick Reference Table and decision content above. State extension type and brief reasoning (placement, functionality, integration).
Step 3: Check References, Then Discover (if needed)
Workflow: References first, search only for gaps.
- •Identify required APIs from user requirements
- •Check relevant reference files:
- •Backend events →
wix-cli-backend-event/references/COMMON-EVENTS.md - •Wix Data →
wix-cli-dashboard-page/references/WIX_DATA.md - •Dashboard SDK →
wix-cli-dashboard-page/references/DASHBOARD_API.md - •Service Plugin SPIs →
wix-cli-service-plugin/references/*.md
- •Backend events →
- •Verify the specific method/event exists in references
- •ONLY spawn discovery if NOT found in reference files
Platform APIs (never discover - in references):
- •Wix Data, Dashboard SDK, Event SDK (common events), Service Plugin SPIs
Vertical APIs (discover if needed):
- •Wix Stores, Wix Bookings, Wix Members, Wix Pricing Plans, third-party integrations
Decision table:
| User Requirement | Check References / Discovery Needed? | Reason / Reference File |
|---|---|---|
| "Display store products" | ✅ YES (Spawn discovery) | Wix Stores API not in reference files |
| "Show booking calendar" | ✅ YES (Spawn discovery) | Wix Bookings API not in reference files |
| "Send emails to users" | ✅ YES (Spawn discovery) | Wix Triggered Emails not in reference files |
| "Get member info" | ✅ YES (Spawn discovery) | Wix Members API not in reference files |
| "Listen for cart events" | Check COMMON-EVENTS.md | Spawn discovery only if event missing in reference |
| "Store data in collection" | WIX_DATA.md ✅ Found | ❌ Skip discovery (covered by WIX_DATA.md) |
| "Create CMS collections for my app" | Reference: wix-cli-data-collection | ❌ Skip discovery (covered by dedicated skill) |
| "Show dashboard toast" | DASHBOARD_API.md ✅ Found | ❌ Skip discovery |
| "Show toast / navigate" | DASHBOARD_API.md ✅ Found | ❌ Skip discovery |
| "UI only (forms, inputs)" | N/A (no external API) | ❌ Skip discovery |
| "Settings page with form inputs" | N/A (UI only, no external API) | ❌ Skip discovery |
| "Dashboard page with local state" | N/A (no external API) | ❌ Skip discovery |
MCP Tools the sub-agent should use:
- •
mcp__wix-mcp-remote__SearchWixSDKDocumentation- SDK methods and APIs (Always use maxResults: 5) - •
mcp__wix-mcp-remote__ReadFullDocsArticle- Full documentation when needed (only if search results need more detail)
Discovery sub-agent prompt template:
Discover SDK methods for [SPECIFIC API/EVENT NOT IN REFERENCE FILES].
Search MCP documentation (use maxResults: 5):
- Search SDK documentation for [SPECIFIC API] with maxResults: 5
- Only use ReadFullDocsArticle if search results need more context
Return ONLY a concise summary in this format:
## SDK Methods & Interfaces
| Name | Type | TypeScript Type | Description |
| ------------------------- | ------ | -------------------------------------------- | ----------------- |
| `moduleName.methodName()` | Method | `(params: ParamType) => Promise<ReturnType>` | Brief description |
**Import:** `import { methodName } from '@wix/sdk-module';`
Include any gotchas or constraints discovered.
If discovery is spawned, wait for it to complete before proceeding to Step 4.
Step 4: Spawn Implementation Sub-Agent(s)
⚠️ BLOCKING REQUIREMENT ⚠️
You MUST spawn sub-agent(s) for implementation. Do NOT invoke implementation skills directly. Do NOT write code yourself.
Spawn an implementation sub-agent with the skill context:
The sub-agent prompt should include:
- •The skill to load (e.g.,
wix-cli-dashboard-page) - •The user's requirements
- •The SDK context from the discovery sub-agent
- •Instruction to invoke the
wds-docsskill only when needed (e.g. when looking up WDS component props or examples)
Implementation sub-agent prompt MUST include:
- •✅ The skill to load (full path or name)
- •✅ The user's original requirements (copy verbatim)
- •✅ SDK methods discovered (with imports and types) — only if discovery was performed
- •✅ Instruction to invoke
wds-docsskill FIRST when using @wix/design-system (critical for correct imports, especially icons) - •✅ Any constraints or gotchas discovered
Implementation sub-agent prompt template:
Load and follow the skill: wix-cli-[skill-name] User Requirements: [EXACT user request - copy verbatim] [ONLY IF DISCOVERY WAS PERFORMED:] SDK Context: [Methods with imports from discovery] Constraints: [Any gotchas or limitations from discovery] ⚠️ MANDATORY when using WDS: Before using @wix/design-system components, invoke the wds-docs skill FIRST to get correct imports (icons are from @wix/wix-ui-icons-common, NOT @wix/design-system/icons). Implement this extension following the skill guidelines.
PARALLEL EXECUTION: When multiple independent extensions are needed, spawn ALL sub-agents in parallel:
| Extension Combination | Parallel? | Reason |
|---|---|---|
| Dashboard Page + Site Widget | ✅ YES | Independent UI contexts |
| Dashboard Page + Dashboard Modal | ✅ YES | Modal code is independent from page |
| Dashboard Page + Backend API | ✅ YES | Frontend vs backend |
| Site Widget + Embedded Script | ✅ YES | Different rendering contexts |
| Service Plugin + Event Extension | ✅ YES | Independent backend handlers |
| Data Collection + Dashboard Page | ✅ YES | Data schema vs UI |
| Data Collection + Backend API | ✅ YES | Data schema vs HTTP handlers |
| Data Collection + Site Widget | ✅ YES | Data schema vs site UI |
Sequential execution required:
- •When one extension imports types/interfaces from another
- •When user explicitly says "first X, then Y"
Extension Type to Skill Mapping: See Quick Reference Table above.
Wait for sub-agents to complete before proceeding to Step 5.
Step 5: Run Validation
⚠️ BLOCKING REQUIREMENT ⚠️
After ALL implementation sub-agents complete, you MUST run validation by invoking the wix-cli-app-validation skill.
Do NOT report completion to the user until validation passes.
If validation fails:
- •Review the errors
- •Spawn a new implementation sub-agent to fix the issues
- •Run validation again
- •Repeat until validation passes
Step 6: Report Completion
Only after validation passes, report to the user:
- •What was created
- •How to test it (preview commands)
- •Any next steps
Summary: Discovery = business domain SDK only (Stores, Bookings, etc.) — skip for extension SDK and data collections. Implementation = load extension skill; invoke wds-docs FIRST when using WDS (for correct imports). Validation = wix-cli-app-validation.
Cost Optimization
- •Check references first — read relevant reference files before spawning discovery
- •Skip discovery when all required APIs are in reference files
- •maxResults: 5 for all MCP SDK searches
- •ReadFullDocsArticle only when search results need more context
- •Implementation prompts: include only relevant SDK context from discovery (if performed)
- •Parallelize independent sub-agents when possible
- •Invoke wds-docs first when using WDS (prevents import errors)
- •Targets: discovery output 500-1000 tokens; implementation prompt minimal; each search under 2000-3000 tokens
Documentation
For detailed documentation on all extension types, see references/DOCUMENTATION.md.