From wix-cli
MUST use whenever the user wants to add a clickable menu item, action, or option to an existing Wix dashboard page's more-actions menu, bulk-actions menu, or context menu. This includes any request to add actions/options/items to menus on Wix Stores (products, inventory), Wix Bookings (calendar, services, staff, booking list), Wix Blog (posts, categories, tags), Wix eCommerce (orders), Wix Events, Wix CRM (contacts), or Wix Restaurants (reservations, online orders, menus) dashboard pages. Trigger on phrases like: add menu item, add action to menu, add option to more actions, bulk action, custom action in dashboard menu, extend dashboard menu, dashboard menu plugin, context menu action on dashboard page. Do NOT use for: visual widgets/plugins embedded in dashboard page slots (use wix-cli-dashboard-plugin), standalone dashboard pages (use wix-cli-dashboard-page), standalone modals (use wix-cli-dashboard-modal), or site-facing UI.
npx claudepluginhub wix-playground/skills-architecture-test --plugin wix-cliThis skill uses the workspace's default tool permissions.
Creates dashboard menu plugin extensions for Wix CLI applications. Dashboard menu plugins are menu items that integrate into predefined **menu slots** on dashboard pages managed by Wix first-party business apps (Wix Stores, Wix Bookings, Wix Blog, Wix eCommerce, Wix Events, Wix CRM, Wix Restaurants).
Builds and reviews Wix CLI app extensions: dashboard pages, modals, plugins, Editor React components, backend APIs, events, service plugins, data collections. Prepares apps for App Market review.
Implements custom menus and menu items in Umbraco backoffice using official docs. Generates TypeScript or JSON manifests for new or extended menus like Help or Content.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Share bugs, ideas, or general feedback.
Creates dashboard menu plugin extensions for Wix CLI applications. Dashboard menu plugins are menu items that integrate into predefined menu slots on dashboard pages managed by Wix first-party business apps (Wix Stores, Wix Bookings, Wix Blog, Wix eCommerce, Wix Events, Wix CRM, Wix Restaurants).
When clicked, a dashboard menu plugin either navigates to a dashboard page or opens a dashboard modal.
Dashboard menu plugins are configuration-only extensions — they do NOT have a React component file.
Follow these steps in order when creating a dashboard menu plugin:
src/extensions/dashboard/menu-plugins/<plugin-name>/<plugin-name>.extension.ts with extensions.dashboardMenuPlugin() and unique UUIDaction field to either navigate to a dashboard page or open a modalsrc/extensions.ts to import and use the new extensionDashboard menu plugins operate as click-to-action menu items. They:
Dashboard menu plugins live under src/extensions/dashboard/menu-plugins/. Each plugin has its own folder containing a single file.
src/extensions/dashboard/menu-plugins/
└── <plugin-name>/
└── <plugin-name>.extension.ts # Builder configuration
Note: This is the default folder structure created by the CLI. You can move the file to any location within the
src/folder and update the references in yourextension.tsfile.
<plugin-name>.extension.tsimport { extensions } from "@wix/astro/builders";
export const dashboardmenupluginMyMenuPlugin = extensions.dashboardMenuPlugin({
id: "{{GENERATE_UUID}}",
title: "My Menu Plugin",
extends: "<MENU_SLOT_ID>",
iconKey: "Sparkles",
action: {
navigateToPage: {
pageId: "<DASHBOARD_PAGE_ID>",
},
},
});
CRITICAL: UUID Generation
The id must be a unique, static UUID v4 string. Generate a fresh UUID for each extension — do NOT use randomUUID() or copy UUIDs from examples. Replace {{GENERATE_UUID}} with a freshly generated UUID like "a1b2c3d4-e5f6-7890-abcd-ef1234567890".
| Field | Type | Description |
|---|---|---|
id | string | Unique plugin ID (GUID). Must be unique across all extensions in the project. |
title | string | Text displayed for the menu item. |
extends | string | Menu slot ID where the extension integrates. See Slot Lookup Table. |
iconKey | string | Icon name from Wix Design System appearing next to the title. |
action | object | Navigation configuration determining behavior when clicked. |
extends FieldThe extends field specifies which dashboard menu slot hosts your menu plugin. Each Wix business app exposes menu slots on its dashboard pages. You must provide the exact slot ID.
Important: Some slots with the same ID appear on different pages within the dashboard. If you create a menu plugin for a slot that exists on multiple pages, the menu plugin is displayed on all of those pages.
For the complete list of available menu slot IDs, see the Slot Lookup Table below. Read only the vertical file that matches the user's request.
action FieldThe action field determines what happens when the user clicks the menu item. You must configure exactly one of the following:
action: {
navigateToPage: {
pageId: "<DASHBOARD_PAGE_ID>",
},
},
| Field | Type | Description |
|---|---|---|
action.navigateToPage | object | Page navigation configuration object. |
action.navigateToPage.pageId | string | The id of the target dashboard page extension. |
action: {
openModal: {
componentId: "<DASHBOARD_MODAL_ID>",
},
},
| Field | Type | Description |
|---|---|---|
action.openModal | object | Modal navigation configuration object. |
action.openModal.componentId | string | The id of the target dashboard modal extension. |
iconKey FieldThe iconKey must be a valid icon name from the Wix Design System icon set (@wix/wix-ui-icons-common). Use the wds-docs skill to look up available icon names.
Extension registration is MANDATORY and has TWO required steps.
Each dashboard menu plugin requires a <plugin-name>.extension.ts file in its folder. See Plugin Builder Configuration above.
CRITICAL: After creating the plugin-specific extension file, you MUST read wix-cli-extension-registration and follow the "App Registration" section to update src/extensions.ts.
Without completing Step 2, the dashboard menu plugin will not appear on the dashboard page.
extends field MUST contain a valid menu slot ID from a Wix business app — do NOT invent slot IDsaction.navigateToPage.pageId MUST reference the id of an existing dashboard page extension in the projectaction.openModal.componentId MUST reference the id of an existing dashboard modal extension in the projectIdentify which Wix app the user is targeting, then read only the corresponding reference file for slot IDs.
| Wix App | Keywords | Slot Reference |
|---|---|---|
| Wix Blog | blog, posts, categories, tags, drafts, scheduled | blog-slots.md |
| Wix Bookings | bookings, calendar, services, staff, booking list | bookings-slots.md |
| Wix CRM | CRM, contacts | crm-slots.md |
| Wix eCommerce | ecommerce, orders, payment | ecommerce-slots.md |
| Wix Events | events, guests, RSVP, ticketed | events-slots.md |
| Wix Stores | stores, products, inventory, catalog | stores-slots.md |
| Wix Restaurants | restaurants, reservations, online orders, menus | restaurants-slots.md |
Token limits: Your max output is ~10,000 tokens. Plan your response to stay under this limit.