All skills
wix avatar

/wix-app

@dc6f1fa official
by Wix.comwix/skills33 stars
33

Build and review Wix CLI app extensions — dashboard pages, modals, plugins, menu plugins, custom element widgets, Editor React components, site plugins, embedded scripts, backend APIs, backend events, service plugins, data collections, and App Market readiness. Use when building ANY feature or extension for a Wix CLI app or preparing a Wix app for App Market review. Triggers on: add, build, create, implement, help me, dashboard, widget, plugin, backend, API, event, collection, embedded script, service plugin, Editor React component, checkout, shipping, tax, discount, SPI, CMS, schema, tracking, popup, admin panel, menu item, modal, validate, test, verify, register extension, App Market, app review, submission readiness.

Use this Skill: https://skilld.dev/gh/wix/skills/wix-app

This session only. Nothing lands on disk.

referencesapp-toolsTOOLS.md

≈1.1k tokens on demand. Your agent reads this file only when SKILL.md points to it.

App Tools Extension Reference

Overview

The APP_TOOLS extension declares the tools your app exposes to the Wix AI assistant. Each tool entry tells the AI assistant what the tool does, what it accepts, and what it returns — so the assistant can discover and invoke it at runtime.

The AI assistant does NOT call these tools directly. It uses the declarations here to understand the tool's purpose and invoke your Tools Provider service plugin at runtime. See TOOLS_PROVIDER.md for the runtime handler.

Registration

Scaffold the extension with the CLI — it creates the .extension.ts file and registers it in src/extensions.ts automatically:

wix generate --params '{"extensionType":"APP_TOOLS","name":"my-tools"}'

The generated file lives at src/extensions/backend/app-tools/my-tools/my-tools.extension.ts. Replace the stub tool with your own:

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

export default extensions.appTools({
  id: '<generated-uuid>',
  name: 'my-tools',
  tools: [
    {
      methodName: 'get-order-status',
      displayName: 'Get Order Status',
      description: 'Returns the current fulfillment status, shipping carrier, and tracking number for a customer order. Use this tool when a collaborator or customer asks where their order is, whether it has shipped, when it will arrive, or needs a tracking number. Requires a valid orderId.',
      requestSchema: {
        type: 'object',
        properties: {
          orderId: { type: 'string', description: 'The order ID to look up.' }
        },
        required: ['orderId']
      },
      responseSchema: {
        type: 'object',
        properties: {
          status: { type: 'string' },
          trackingNumber: { type: 'string' }
        }
      },
      activated: true
    }
  ]
});

AppToolConfig Fields

Field Type Required Description
methodName string Yes Unique word identifying the tool. Used to route calls in the service plugin handler. 1–30 characters.
description string Yes Natural-language description the AI assistant uses to decide when to invoke this tool. Write it like a prompt: state what the tool does, list the user intents or trigger phrases that should activate it, and describe what it returns. A narrow one-liner reduces relevance matching — prefer 2–4 sentences covering intent, triggers, and output. 10–1000 characters.
displayName string No Human-readable name for the tool, shown in AI agent UIs. 2–50 characters. The CLI's generated stub always fills this in — keep it when you replace the stub tool.
requestSchema Record<string, any> No JSON Schema describing the tool's request payload. The AI assistant uses this for context — it is NOT validated by Wix at call time.
responseSchema Record<string, any> No JSON Schema describing the tool's response payload.
activated boolean No Only tools with activated: true are called by the AI assistant. Defaults to false if omitted — there's no build-time or generate-time error for leaving it out, so a forgotten activated silently produces a tool the assistant will never call. Always set it explicitly.

Important Constraints

  • tools array: min 1, max 100 tools per extension.
  • methodName must be unique across all tools in the extension — it is the routing key in the service plugin handler.
  • Schemas are advisory for the AI assistant; your handler must still validate inputs defensively.
  • Only activated: true tools are invoked. Use activated: false to temporarily disable a tool without removing it.

Relationship to the Tools Provider

The APP_TOOLS extension is the declaration side. The execution side is the Tools Provider service plugin registered with toolsProviderConfig:

APP_TOOLS (declaration)  →  AI assistant discovers & selects a tool
toolsProviderConfig (SPI) →  Wix calls your runTool handler at runtime

Both extensions must be registered for the feature to work end-to-end. See APP_TOOLS.md for the full picture and TOOLS_PROVIDER.md for the handler implementation.

Source: SKILL.md on GitHub

1 warningtoday4 checks · Risk SAFE
  • Gen Agent Trust Hubtoday

    This skill is a specialized development toolkit for building extensions on the Wix platform. It provides comprehensive instructions for creating dashboard pages, backend APIs, and site plugins using the Wix CLI and SDKs. No malicious patterns were detected; the skill's behaviors, such as dependency management, command execution for builds, and local script execution for code reviews, are entirely consistent with its purpose as a developer productivity tool for the Wix ecosystem.

  • Sockettoday

    1 alert: gptAnomaly

  • Snyktoday

    Risk: LOW · No issues

  • ZeroLeaks5mo

    Score: 93/100 · 2 sections analyzed

Signed by skilld at dc6f1fa. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub yesterday.

Activeupdated 2 days ago
compatibility
requires `@wix/cli` >= 1.1.192.

README badge

README badge for wix/skills/wix-app

Builds dashboard pages, modals, plugins, custom widgets, Editor React components, backend APIs, events, service plugins, and data collections for Wix CLI apps. Provides decision logic, API patterns, and validation workflows; scaffolding is owned by the Wix CLI via `wix generate --params`.

Generated from the current SKILL.md.

What extension types does this skill cover?
All Wix CLI app extension types: dashboard pages, modals, plugins, menu plugins, custom element widgets, Editor React components, site plugins, embedded scripts, backend APIs, backend events, service plugins, and data collections.
Does this skill scaffold the extension files for me?
The Wix CLI owns scaffolding via `wix generate --params` for all extension types except Backend API. This skill provides decision logic, API guidance, and business-logic patterns to fill in the generated stubs. Backend API files must be created manually.
What Wix CLI version is required?
The skill requires @wix/cli >= 1.1.192.
Do I need to create a Data Collection extension for app-specific data?
Yes, if you're saving or persisting app-specific data, managing domain entities in a dashboard, or running a service plugin that reads app-configured data. The skill infers this automatically—you don't need to explicitly request it.
Does this skill cover Wix Stores API usage?
Yes. When using any Wix Stores API (products, inventory, orders), the skill requires dual V1/V3 catalog support and references the Stores Versioning guide for module selection and field mapping.

Generated from the current SKILL.md. These answers refresh after source changes.