Token导航 LogoToken导航TokenDH.com
前端设计只读github未标认证来源可访问许可证需确认审计通过

wix-cli-dashboard-pluginWIX CLI dashboard plugin 命令行

Agent Skill

wix-cli-dashboard-plugin 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

5,715

周安装

243

GitHub Stars

9

下载量

2,002
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:wix-cli-dashboard-plugin(WIX CLI dashboard plugin 命令行)
来源仓库:https://github.com/wix/skills
仓库路径:skills/wix-cli-dashboard-plugin
安装命令:
npx skills add https://github.com/wix/skills --skill wix-cli-dashboard-plugin
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/wix/skills --skill wix-cli-dashboard-plugin

简介

用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中围绕仓库状态或代码变更进行整理。
  • 通过 npx skills add 命令从指定仓库安装并使用。
  • 建议确认权限范围和维护状态,避免触发联网或文件读写。
  • wix-cli-dashboard-plugin 属于前端设计类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Wix Dashboard Plugin Builder

Creates dashboard plugin extensions for Wix CLI applications. Dashboard plugins are interactive widgets that embed into predefined slots on dashboard pages managed by Wix first-party business apps (Wix Stores, Wix Bookings, Wix Blog, Wix eCommerce, etc.).

Dashboard plugins occupy the full width of their slot and maintain dynamic height based on content.


Quick Start Checklist

Follow these steps in order when creating a dashboard plugin:

  1. Identify the target slot ID — see Slots Reference
  2. Create plugin folder: src/extensions/dashboard/plugins/<plugin-name>/
  3. Create <plugin-name>.extension.ts with extensions.dashboardPlugin() and unique UUID
  4. Create <plugin-name>.tsx with React component wrapped in WixDesignSystemProvider
  5. Update src/extensions.ts to import and use the new extension

Architecture

Dashboard plugins operate through two mechanisms:

  1. Visual Integration — Embedding plugin UI inside a supported dashboard page slot
  2. Logical Integration — Implementing communication between the plugin and the host page's data via observeState()

Files and Code Structure

Dashboard plugins live under src/extensions/dashboard/plugins/. Each plugin has its own folder.

src/extensions/dashboard/plugins/
└── <plugin-name>/
    ├── <plugin-name>.extension.ts   # Builder configuration
    └── <plugin-name>.tsx            # React component
Note: This is the default folder structure created by the CLI. You can move these files to any location within the src/ folder and update the references in your extension.ts file.

Plugin Builder Configuration

File: <plugin-name>.extension.ts

import { extensions } from "@wix/astro/builders";

export const dashboardpluginMyPlugin = extensions.dashboardPlugin({
  id: "{{GENERATE_UUID}}",
  title: "My Dashboard Plugin",
  extends: "<SLOT_ID>",
  component: "./extensions/dashboard/plugins/my-plugin/my-plugin.tsx",
});

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".

Builder Fields

FieldTypeDescription
idstringUnique plugin ID (GUID). Must be unique across all extensions in the project.
titlestringPlugin title. Used to refer to the plugin in the project dashboard.
extendsstringSlot ID of the dashboard page hosting the plugin. See Slots Reference.
componentstringRelative path to the plugin content component (.tsx file).

The extends Field

The extends field specifies which dashboard page slot hosts your plugin. Each Wix business app exposes 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 plugin for a slot that exists on multiple pages, the plugin is displayed on all of those pages.

For the complete list of available slot IDs, see Slots Reference.

Plugin Component

File: <plugin-name>.tsx

The plugin component is a React component that renders within the dashboard page slot.

import type { FC } from "react";
import { WixDesignSystemProvider, Card, Text } from "@wix/design-system";
import "@wix/design-system/styles.global.css";

const Plugin: FC = () => {
  return (
    <WixDesignSystemProvider features={{ newColorsBranding: true }}>
      <Card>
        <Card.Header title="My Plugin" />
        <Card.Divider />
        <Card.Content size="medium">
          <Text>Plugin content goes here.</Text>
        </Card.Content>
      </Card>
    </WixDesignSystemProvider>
  );
};

export default Plugin;

Available Resources in Plugin Components

  • React — Component logic and state management
  • Wix SDK — Access Wix business solutions and site data
  • Wix Dashboard SDK (@wix/dashboard) — Interact with the dashboard page's data passed to the slot
  • Wix Design System (@wix/design-system) — Native-looking React components matching Wix's own dashboard UI

Interacting with Dashboard Data

Use observeState() from the Dashboard SDK to receive data from the host dashboard page:

import { dashboard } from "@wix/dashboard";
import { useEffect, useState } from "react";

const Plugin: FC = () => {
  const [params, setParams] = useState<Record<string, unknown>>({});

  useEffect(() => {
    dashboard.observeState((componentParams) => {
      setParams(componentParams);
    });
  }, []);

  return (
    <WixDesignSystemProvider features={{ newColorsBranding: true }}>
      <Card>
        <Card.Content size="medium">
          <Text>Received data: {JSON.stringify(params)}</Text>
        </Card.Content>
      </Card>
    </WixDesignSystemProvider>
  );
};

Typed Props from Host Apps

Some Wix apps expose typed interfaces for their slot parameters. Import them from the app's dashboard package:

import type { plugins } from "@wix/blog/dashboard";

type Props = plugins.BlogPosts.PostsBannerParams;

const Plugin: FC<Props> = (props) => {
  // props are typed according to the Blog Posts slot contract
};
Note: Typed props availability varies by Wix app. Consult the specific app's SDK documentation. Not all slots provide typed parameter interfaces.

Extension Registration

Extension registration is MANDATORY and has TWO required steps.

Step 1: Create Plugin-Specific Extension File

Each dashboard plugin requires an <plugin-name>.extension.ts file in its folder. See Plugin Builder Configuration above.

Step 2: Register in Main Extensions File

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 plugin will not appear on the dashboard page.

Sizing Behavior

  • Dashboard plugins take the full width of their slot
  • Height adjusts dynamically based on content within slot boundaries
  • When using Dashboard SDK or dashboard-react SDK, dimensions change dynamically based on contents

Troubleshooting

SymptomCauseFix
Plugin not appearing on dashboard pageMissing registrationImport and .use() in src/extensions.ts
Plugin not appearing on dashboard pageWrong slot IDVerify extends field matches a valid slot ID from Slots Reference

Hard Constraints

  • Do NOT invent or assume new types, modules, functions, props, events, or imports — use only entities explicitly present in the provided references or standard libraries already used in this project
  • NEVER use mocks, placeholders, or TODOs in any code — ALWAYS implement complete, production-ready functionality
  • The extends field MUST contain a valid slot ID from a Wix business app — do NOT invent slot IDs
  • Prefer type-narrowing and exhaustive logic over assertions; avoid non-null assertions (!) and unsafe casts (as any)
  • Do NOT use // @ts-ignore or // @ts-expect-error; fix the types or add guards instead

Examples

Blog Posts Banner Plugin

Request: "Create a plugin for the Wix Blog posts page that shows a promotional banner"

Output: Plugin targeting slot 46035d51-2ea9-4128-a216-1dba68664ffe (Blog Posts page) with a Card component displaying promotional content, using observeState() to access blog post data.

Bookings Staff Calendar Widget

Request: "Add a plugin to the Wix Bookings staff page that shows weekly availability"

Output: Plugin targeting slot 261e84a2-31d0-4258-a035-10544d251108 (Bookings Staff page) with a schedule display component, using observeState() to receive staff data.

Order Details Plugin

Request: "Create a plugin on the eCommerce order page showing fulfillment status"

Output: Plugin targeting slot cb16162e-42aa-41bd-a644-dc570328c6cc (eCommerce Order page) with status badges and fulfillment details, using observeState() to access order data.

Output Constraints

Token limits: Your max output is ~10,000 tokens. Plan your response to stay under this limit.

  • If making a large file (>300 lines), split it into multiple smaller files with imports
  • Only output files that are directly required for the task
  • Do NOT add README.md or documentation files unless explicitly requested

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

39.02%
按下载量换算781

Claude

30.13%
按下载量换算603

Cursor

17.84%
按下载量换算357

Gemini CLI

9.7%
按下载量换算194

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills